chargebee 2.74.0 → 2.76.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (92) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +16 -0
  3. data/Gemfile.lock +2 -2
  4. data/README.md +53 -0
  5. data/VERSION +1 -1
  6. data/chargebee.gemspec +12 -2
  7. data/lib/chargebee/environment.rb +3 -2
  8. data/lib/chargebee/models/addon.rb +7 -7
  9. data/lib/chargebee/models/address.rb +2 -2
  10. data/lib/chargebee/models/alert.rb +6 -6
  11. data/lib/chargebee/models/alert_status.rb +2 -2
  12. data/lib/chargebee/models/attached_item.rb +5 -5
  13. data/lib/chargebee/models/business_entity.rb +2 -2
  14. data/lib/chargebee/models/card.rb +5 -5
  15. data/lib/chargebee/models/comment.rb +4 -4
  16. data/lib/chargebee/models/configuration.rb +1 -1
  17. data/lib/chargebee/models/coupon.rb +9 -9
  18. data/lib/chargebee/models/coupon_code.rb +4 -4
  19. data/lib/chargebee/models/coupon_set.rb +7 -7
  20. data/lib/chargebee/models/credit_note.rb +14 -14
  21. data/lib/chargebee/models/csv_tax_rule.rb +6 -1
  22. data/lib/chargebee/models/currency.rb +6 -6
  23. data/lib/chargebee/models/customer.rb +26 -26
  24. data/lib/chargebee/models/customer_entitlement.rb +1 -1
  25. data/lib/chargebee/models/differential_price.rb +5 -5
  26. data/lib/chargebee/models/entitlement.rb +2 -2
  27. data/lib/chargebee/models/entitlement_override.rb +2 -2
  28. data/lib/chargebee/models/estimate.rb +20 -20
  29. data/lib/chargebee/models/event.rb +2 -2
  30. data/lib/chargebee/models/export.rb +18 -18
  31. data/lib/chargebee/models/feature.rb +8 -8
  32. data/lib/chargebee/models/gift.rb +7 -7
  33. data/lib/chargebee/models/grant_block.rb +1 -1
  34. data/lib/chargebee/models/hosted_page.rb +22 -22
  35. data/lib/chargebee/models/in_app_subscription.rb +4 -4
  36. data/lib/chargebee/models/invoice.rb +40 -40
  37. data/lib/chargebee/models/item.rb +5 -5
  38. data/lib/chargebee/models/item_entitlement.rb +4 -4
  39. data/lib/chargebee/models/item_family.rb +5 -5
  40. data/lib/chargebee/models/item_price.rb +7 -7
  41. data/lib/chargebee/models/ledger_account_balance.rb +1 -1
  42. data/lib/chargebee/models/ledger_operation.rb +6 -6
  43. data/lib/chargebee/models/non_subscription.rb +1 -1
  44. data/lib/chargebee/models/offer_event.rb +1 -1
  45. data/lib/chargebee/models/offer_fulfillment.rb +3 -3
  46. data/lib/chargebee/models/omnichannel_one_time_order.rb +2 -2
  47. data/lib/chargebee/models/omnichannel_subscription.rb +4 -4
  48. data/lib/chargebee/models/omnichannel_subscription_item.rb +1 -1
  49. data/lib/chargebee/models/order.rb +12 -12
  50. data/lib/chargebee/models/payment_intent.rb +3 -3
  51. data/lib/chargebee/models/payment_schedule_scheme.rb +3 -3
  52. data/lib/chargebee/models/payment_source.rb +16 -16
  53. data/lib/chargebee/models/payment_voucher.rb +4 -4
  54. data/lib/chargebee/models/personalized_offer.rb +1 -1
  55. data/lib/chargebee/models/plan.rb +7 -7
  56. data/lib/chargebee/models/portal_session.rb +4 -4
  57. data/lib/chargebee/models/price_variant.rb +5 -5
  58. data/lib/chargebee/models/pricing_page_session.rb +2 -2
  59. data/lib/chargebee/models/promotional_credit.rb +5 -5
  60. data/lib/chargebee/models/promotional_grant.rb +1 -1
  61. data/lib/chargebee/models/purchase.rb +2 -2
  62. data/lib/chargebee/models/quote.rb +26 -26
  63. data/lib/chargebee/models/ramp.rb +5 -5
  64. data/lib/chargebee/models/recorded_purchase.rb +2 -2
  65. data/lib/chargebee/models/resource_migration.rb +1 -1
  66. data/lib/chargebee/models/rule.rb +1 -1
  67. data/lib/chargebee/models/site_migration_detail.rb +1 -1
  68. data/lib/chargebee/models/subscription.rb +37 -37
  69. data/lib/chargebee/models/subscription_entitlement.rb +2 -2
  70. data/lib/chargebee/models/time_machine.rb +3 -3
  71. data/lib/chargebee/models/transaction.rb +11 -11
  72. data/lib/chargebee/models/unbilled_charge.rb +6 -6
  73. data/lib/chargebee/models/usage.rb +5 -5
  74. data/lib/chargebee/models/usage_charge.rb +1 -1
  75. data/lib/chargebee/models/usage_event.rb +2 -2
  76. data/lib/chargebee/models/usage_file.rb +2 -2
  77. data/lib/chargebee/models/usage_summary.rb +1 -1
  78. data/lib/chargebee/models/virtual_bank_account.rb +6 -6
  79. data/lib/chargebee/models/webhook_endpoint.rb +5 -5
  80. data/lib/chargebee/request.rb +37 -8
  81. data/lib/chargebee/telemetry/request_telemetry_context.rb +29 -0
  82. data/lib/chargebee/telemetry/request_telemetry_error.rb +20 -0
  83. data/lib/chargebee/telemetry/request_telemetry_result.rb +20 -0
  84. data/lib/chargebee/telemetry/telemetry_adapter.rb +32 -0
  85. data/lib/chargebee/telemetry/telemetry_attribute_keys.rb +33 -0
  86. data/lib/chargebee/telemetry/telemetry_support.rb +123 -0
  87. data/lib/chargebee/telemetry_executor.rb +95 -0
  88. data/lib/chargebee.rb +9 -1
  89. data/spec/chargebee/request_telemetry_spec.rb +75 -0
  90. data/spec/chargebee/telemetry_executor_spec.rb +147 -0
  91. data/spec/chargebee/telemetry_support_spec.rb +29 -0
  92. metadata +15 -2
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: '0491ff77188f041cf1f3549ac11adcaee8853fa37297489ab5ca7963cb8289a0'
4
- data.tar.gz: b5c082654b8b9e1bcb242edea8137191bcc34b13430771e98e2d1e89026a4b8b
3
+ metadata.gz: ee5c93cd1277cfb710462cb68116dd70bff8d58df1870ccc8ea25d295b261c98
4
+ data.tar.gz: a88931a17cdbd526a4a38abf29cefc4e7bc3fcb26c76d3c681dea47891469085
5
5
  SHA512:
6
- metadata.gz: 8482844d6a45dcef2bb3003fff78abb2ccb67bf29bb2f9c7d1a5b549093c61229579600420d28c8490854e3515d28240911cf06f9f107a44be336f66f0042dfe
7
- data.tar.gz: b1cb1c6f7474d737c75bd052694469f574d18c770e82241b09dfe7d06c873c42404222a2f905f438d0cd1789416e04c113304542ca3cd3838191137f69d1ef89
6
+ metadata.gz: dc3d3047fb3034b884be982d5df8e5e9f66af151284b1c4547dff07acc6a5978cceb253b564f1774acab2409aaf6d4467bc6f67699fc538af11820c3bcd64a15
7
+ data.tar.gz: aae9d9b23ec19030240dc23b4f0f3417c2a5e6d2bbf43e7a38da166d49f56d44572fe3ea244f45ce2a2d0bd26d81d448816a26fff51e3703e831c43b2c50b8fc
data/CHANGELOG.md CHANGED
@@ -1,3 +1,19 @@
1
+ ### v2.76.0 (2026-07-02)
2
+ * * *
3
+
4
+ ### Bug Fixes:
5
+ - Fixed the packaged gem to include the telemetry sources (`ChargeBee::Telemetry` adapter, related types, and the telemetry executor) that were unintentionally omitted from the `2.75.0` release manifest. No API changes.
6
+
7
+
8
+ ### v2.75.0 (2026-07-01)
9
+ * * *
10
+
11
+ ### New Features
12
+ * Added an optional telemetry adapter hook for tracing Chargebee API calls via OpenTelemetry (or any APM). Configure it via `ChargeBee.configure(site: ..., api_key: ..., telemetry_adapter: adapter)`. When unconfigured, the SDK skips all telemetry work — no behavior change for existing integrations.
13
+ * Each API call emits one CLIENT span (`chargebee.{resource}.{operation}`) with OpenTelemetry HTTP semantic-convention attributes plus `chargebee.*` attributes. Adapters may inject W3C trace context (`traceparent`) into outbound request headers for distributed tracing.
14
+ * Exposed the `TelemetryAdapter`, `RequestTelemetryContext`, `RequestTelemetryResult`, `RequestTelemetryError` types, the `TelemetrySupport` helpers, and the `TelemetryAttributeKeys` constants under the `ChargeBee::Telemetry` module. OpenTelemetry is not bundled with the SDK; bring your own OTel (or APM) gems in the host application.
15
+
16
+
1
17
  ### v2.74.0 (2026-06-12)
2
18
  * * *
3
19
  ### Bug Fixes:
data/Gemfile.lock CHANGED
@@ -1,7 +1,7 @@
1
1
  PATH
2
2
  remote: .
3
3
  specs:
4
- chargebee (2.74.0)
4
+ chargebee (2.76.0)
5
5
  cgi (>= 0.1.0, < 1.0.0)
6
6
 
7
7
  GEM
@@ -10,7 +10,7 @@ GEM
10
10
  addressable (2.8.7)
11
11
  public_suffix (>= 2.0.2, < 7.0)
12
12
  bigdecimal (3.2.2)
13
- cgi (0.5.1)
13
+ cgi (0.5.2)
14
14
  crack (1.0.0)
15
15
  bigdecimal
16
16
  rexml
data/README.md CHANGED
@@ -131,6 +131,59 @@ ChargeBee::default_env.retry_config = {
131
131
  # ... your Chargebee API operations ...
132
132
  ```
133
133
 
134
+ ### Telemetry (OpenTelemetry)
135
+
136
+ **Optional add-on.** Existing integrations do not need any changes — if you never set a telemetry adapter, API calls behave exactly as before.
137
+
138
+ Pass a `telemetry_adapter` when you want Chargebee API calls traced in your observability stack (Datadog, Splunk, Honeycomb, Jaeger, etc.). OpenTelemetry is **not** bundled with the `chargebee` gem — install and configure OTel (or your APM SDK) in your application, implement `ChargeBee::Telemetry::TelemetryAdapter`, and wire it on the environment.
139
+
140
+ The SDK builds standardized span attributes (`start_attributes`, `end_attributes`) following stable [OpenTelemetry HTTP semantic conventions](https://opentelemetry.io/docs/specs/semconv/http/http-spans/) (`url.full`, `http.request.method`, `http.response.status_code`, `server.address`, `error.type`) plus Chargebee-specific `chargebee.*` attributes (see constants in `ChargeBee::Telemetry::TelemetryAttributeKeys`).
141
+
142
+ Span names follow `chargebee.{resource}.{operation}` (for example, `chargebee.customer.create`). One span is created per SDK API call; retries reuse the same span. Adapter failures are logged and never affect the underlying API request.
143
+
144
+ Configure at startup — pass `telemetry_adapter` in the same `ChargeBee.configure` call. `configure` replaces the default environment, so calling it again without `telemetry_adapter` drops a previously configured adapter:
145
+
146
+ ```ruby
147
+ require 'chargebee'
148
+
149
+ class MyTelemetryAdapter
150
+ include ChargeBee::Telemetry::TelemetryAdapter
151
+
152
+ def on_request_start(context, request_headers)
153
+ # Start a span using context.start_attributes and inject trace headers into request_headers
154
+ nil
155
+ end
156
+
157
+ def on_request_end(handle, result)
158
+ # End the span using result.end_attributes
159
+ end
160
+ end
161
+
162
+ ChargeBee.configure(
163
+ api_key: 'your_api_key',
164
+ site: 'your_site',
165
+ telemetry_adapter: MyTelemetryAdapter.new,
166
+ )
167
+ ```
168
+
169
+ If you pass a custom `ChargeBee::Environment` into resource methods as `env`, set `telemetry_adapter` on that instance — `ChargeBee.configure` only updates the default environment:
170
+
171
+ ```ruby
172
+ env = ChargeBee::Environment.new(
173
+ api_key: 'your_api_key',
174
+ site: 'your_site',
175
+ telemetry_adapter: MyTelemetryAdapter.new,
176
+ )
177
+
178
+ ChargeBee::Customer.list({}, env)
179
+ ```
180
+
181
+ To pass custom `chargebee-*` headers (promoted to `http.request.header.chargebee-*` span attributes), include them in the `headers` argument on resource methods:
182
+
183
+ ```ruby
184
+ ChargeBee::Customer.list({}, nil, { 'chargebee-business-entity-id' => 'entity-id' })
185
+ ```
186
+
134
187
  ## License
135
188
 
136
189
  See the LICENSE file.
data/VERSION CHANGED
@@ -1 +1 @@
1
- 2.74.0
1
+ 2.76.0
data/chargebee.gemspec CHANGED
@@ -4,8 +4,8 @@ Gem::Specification.new do |s|
4
4
  s.rubygems_version = '1.3.5'
5
5
  s.required_ruby_version = '>= 1.9.3'
6
6
  s.name = 'chargebee'
7
- s.version = '2.74.0'
8
- s.date = '2026-06-18'
7
+ s.version = '2.76.0'
8
+ s.date = '2026-07-02'
9
9
  s.summary = "Ruby client for Chargebee API."
10
10
  s.description = "Subscription Billing - Simple. Secure. Affordable. More details at www.chargebee.com."
11
11
  s.metadata = {
@@ -159,10 +159,20 @@ Gem::Specification.new do |s|
159
159
  lib/chargebee/request.rb
160
160
  lib/chargebee/rest.rb
161
161
  lib/chargebee/result.rb
162
+ lib/chargebee/telemetry/request_telemetry_context.rb
163
+ lib/chargebee/telemetry/request_telemetry_error.rb
164
+ lib/chargebee/telemetry/request_telemetry_result.rb
165
+ lib/chargebee/telemetry/telemetry_adapter.rb
166
+ lib/chargebee/telemetry/telemetry_attribute_keys.rb
167
+ lib/chargebee/telemetry/telemetry_support.rb
168
+ lib/chargebee/telemetry_executor.rb
162
169
  lib/chargebee/util.rb
163
170
  lib/ssl/ca-certs.crt
164
171
  spec/chargebee/list_result_spec.rb
165
172
  spec/chargebee/native_request_spec.rb
173
+ spec/chargebee/request_telemetry_spec.rb
174
+ spec/chargebee/telemetry_executor_spec.rb
175
+ spec/chargebee/telemetry_support_spec.rb
166
176
  spec/chargebee_spec.rb
167
177
  spec/errors_spec.rb
168
178
  spec/sample_response.rb
@@ -10,8 +10,8 @@ module ChargeBee
10
10
  attr_accessor :api_key, :site, :time_machine_sleeptime, :export_sleeptime, :connect_timeout, :read_timeout
11
11
  attr_reader :api_endpoint
12
12
 
13
- # Add retry_config and enable_debug_logs
14
- attr_accessor :retry_config, :enable_debug_logs
13
+ # Add retry_config, enable_debug_logs, and telemetry_adapter
14
+ attr_accessor :retry_config, :enable_debug_logs, :telemetry_adapter
15
15
 
16
16
  def initialize(options)
17
17
  options[:time_machine_sleeptime] ||= TIME_MACHINE_TIMEOUT
@@ -23,6 +23,7 @@ module ChargeBee
23
23
  end
24
24
  @retry_config = options[:retry_config]
25
25
  @enable_debug_logs = options[:enable_debug_logs] || false
26
+ @telemetry_adapter = options[:telemetry_adapter]
26
27
  if($CHARGEBEE_DOMAIN == nil)
27
28
  @api_endpoint = "https://#{@site}.chargebee.com/api/#{API_VERSION}"
28
29
  else
@@ -28,7 +28,7 @@ module ChargeBee
28
28
  options = {
29
29
  :isIdempotent => true
30
30
  }
31
- Request.send('post', uri_path("addons"), params, env, headers,nil, false, jsonKeys, options)
31
+ Request.send('post', uri_path("addons"), params, env, headers,nil, false, jsonKeys, options, telemetry_resource: "addon", telemetry_operation: "create")
32
32
  end
33
33
 
34
34
  def self.update(id, params, env=nil, headers={})
@@ -38,21 +38,21 @@ module ChargeBee
38
38
  options = {
39
39
  :isIdempotent => true
40
40
  }
41
- Request.send('post', uri_path("addons",id.to_s), params, env, headers,nil, false, jsonKeys, options)
41
+ Request.send('post', uri_path("addons",id.to_s), params, env, headers,nil, false, jsonKeys, options, telemetry_resource: "addon", telemetry_operation: "update")
42
42
  end
43
43
 
44
44
  def self.list(params={}, env=nil, headers={})
45
45
  jsonKeys = {
46
46
  }
47
47
  options = {}
48
- Request.send_list_request('get', uri_path("addons"), params, env, headers,nil, false, jsonKeys, options)
48
+ Request.send_list_request('get', uri_path("addons"), params, env, headers,nil, false, jsonKeys, options, telemetry_resource: "addon", telemetry_operation: "list")
49
49
  end
50
50
 
51
51
  def self.retrieve(id, env=nil, headers={})
52
52
  jsonKeys = {
53
53
  }
54
54
  options = {}
55
- Request.send('get', uri_path("addons",id.to_s), {}, env, headers,nil, false, jsonKeys, options)
55
+ Request.send('get', uri_path("addons",id.to_s), {}, env, headers,nil, false, jsonKeys, options, telemetry_resource: "addon", telemetry_operation: "retrieve")
56
56
  end
57
57
 
58
58
  def self.delete(id, env=nil, headers={})
@@ -61,7 +61,7 @@ module ChargeBee
61
61
  options = {
62
62
  :isIdempotent => true
63
63
  }
64
- Request.send('post', uri_path("addons",id.to_s,"delete"), {}, env, headers,nil, false, jsonKeys, options)
64
+ Request.send('post', uri_path("addons",id.to_s,"delete"), {}, env, headers,nil, false, jsonKeys, options, telemetry_resource: "addon", telemetry_operation: "delete")
65
65
  end
66
66
 
67
67
  def self.copy(params, env=nil, headers={})
@@ -70,7 +70,7 @@ module ChargeBee
70
70
  options = {
71
71
  :isIdempotent => true
72
72
  }
73
- Request.send('post', uri_path("addons","copy"), params, env, headers,nil, false, jsonKeys, options)
73
+ Request.send('post', uri_path("addons","copy"), params, env, headers,nil, false, jsonKeys, options, telemetry_resource: "addon", telemetry_operation: "copy")
74
74
  end
75
75
 
76
76
  def self.unarchive(id, env=nil, headers={})
@@ -79,7 +79,7 @@ module ChargeBee
79
79
  options = {
80
80
  :isIdempotent => true
81
81
  }
82
- Request.send('post', uri_path("addons",id.to_s,"unarchive"), {}, env, headers,nil, false, jsonKeys, options)
82
+ Request.send('post', uri_path("addons",id.to_s,"unarchive"), {}, env, headers,nil, false, jsonKeys, options, telemetry_resource: "addon", telemetry_operation: "unarchive")
83
83
  end
84
84
 
85
85
  end # ~Addon
@@ -11,7 +11,7 @@ module ChargeBee
11
11
  jsonKeys = {
12
12
  }
13
13
  options = {}
14
- Request.send('get', uri_path("addresses"), params, env, headers,nil, false, jsonKeys, options)
14
+ Request.send('get', uri_path("addresses"), params, env, headers,nil, false, jsonKeys, options, telemetry_resource: "address", telemetry_operation: "retrieve")
15
15
  end
16
16
 
17
17
  def self.update(params, env=nil, headers={})
@@ -20,7 +20,7 @@ module ChargeBee
20
20
  options = {
21
21
  :isIdempotent => true
22
22
  }
23
- Request.send('post', uri_path("addresses"), params, env, headers,nil, false, jsonKeys, options)
23
+ Request.send('post', uri_path("addresses"), params, env, headers,nil, false, jsonKeys, options, telemetry_resource: "address", telemetry_operation: "update")
24
24
  end
25
25
 
26
26
  end # ~Address
@@ -13,21 +13,21 @@ module ChargeBee
13
13
  options = {
14
14
  :isIdempotent => true
15
15
  }
16
- Request.send('post', uri_path("alerts"), params, env, headers,nil, false, jsonKeys, options)
16
+ Request.send('post', uri_path("alerts"), params, env, headers,nil, false, jsonKeys, options, telemetry_resource: "alert", telemetry_operation: "create")
17
17
  end
18
18
 
19
19
  def self.retrieve(id, env=nil, headers={})
20
20
  jsonKeys = {
21
21
  }
22
22
  options = {}
23
- Request.send('get', uri_path("alerts",id.to_s), {}, env, headers,nil, false, jsonKeys, options)
23
+ Request.send('get', uri_path("alerts",id.to_s), {}, env, headers,nil, false, jsonKeys, options, telemetry_resource: "alert", telemetry_operation: "retrieve")
24
24
  end
25
25
 
26
26
  def self.list(params={}, env=nil, headers={})
27
27
  jsonKeys = {
28
28
  }
29
29
  options = {}
30
- Request.send_list_request('get', uri_path("alerts"), params, env, headers,nil, false, jsonKeys, options)
30
+ Request.send_list_request('get', uri_path("alerts"), params, env, headers,nil, false, jsonKeys, options, telemetry_resource: "alert", telemetry_operation: "list")
31
31
  end
32
32
 
33
33
  def self.update(id, params={}, env=nil, headers={})
@@ -36,7 +36,7 @@ module ChargeBee
36
36
  options = {
37
37
  :isIdempotent => true
38
38
  }
39
- Request.send('post', uri_path("alerts",id.to_s), params, env, headers,nil, false, jsonKeys, options)
39
+ Request.send('post', uri_path("alerts",id.to_s), params, env, headers,nil, false, jsonKeys, options, telemetry_resource: "alert", telemetry_operation: "update")
40
40
  end
41
41
 
42
42
  def self.delete(id, env=nil, headers={})
@@ -45,14 +45,14 @@ module ChargeBee
45
45
  options = {
46
46
  :isIdempotent => true
47
47
  }
48
- Request.send('post', uri_path("alerts",id.to_s,"delete"), {}, env, headers,nil, false, jsonKeys, options)
48
+ Request.send('post', uri_path("alerts",id.to_s,"delete"), {}, env, headers,nil, false, jsonKeys, options, telemetry_resource: "alert", telemetry_operation: "delete")
49
49
  end
50
50
 
51
51
  def self.application_alerts_for_subscription(id, params={}, env=nil, headers={})
52
52
  jsonKeys = {
53
53
  }
54
54
  options = {}
55
- Request.send('get', uri_path("subscriptions",id.to_s,"applicable_alerts"), params, env, headers,nil, false, jsonKeys, options)
55
+ Request.send('get', uri_path("subscriptions",id.to_s,"applicable_alerts"), params, env, headers,nil, false, jsonKeys, options, telemetry_resource: "alert", telemetry_operation: "applicationAlertsForSubscription")
56
56
  end
57
57
 
58
58
  end # ~Alert
@@ -10,14 +10,14 @@ module ChargeBee
10
10
  jsonKeys = {
11
11
  }
12
12
  options = {}
13
- Request.send('get', uri_path("subscriptions",id.to_s,"alert_statuses"), params, env, headers,nil, false, jsonKeys, options)
13
+ Request.send('get', uri_path("subscriptions",id.to_s,"alert_statuses"), params, env, headers,nil, false, jsonKeys, options, telemetry_resource: "alertStatus", telemetry_operation: "alertStatusesForSubscription")
14
14
  end
15
15
 
16
16
  def self.alert_statuses_for_alert(id, params={}, env=nil, headers={})
17
17
  jsonKeys = {
18
18
  }
19
19
  options = {}
20
- Request.send('get', uri_path("alerts",id.to_s,"alert_statuses"), params, env, headers,nil, false, jsonKeys, options)
20
+ Request.send('get', uri_path("alerts",id.to_s,"alert_statuses"), params, env, headers,nil, false, jsonKeys, options, telemetry_resource: "alertStatus", telemetry_operation: "alertStatusesForAlert")
21
21
  end
22
22
 
23
23
  end # ~AlertStatus
@@ -14,7 +14,7 @@ module ChargeBee
14
14
  options = {
15
15
  :isIdempotent => true
16
16
  }
17
- Request.send('post', uri_path("items",id.to_s,"attached_items"), params, env, headers,nil, false, jsonKeys, options)
17
+ Request.send('post', uri_path("items",id.to_s,"attached_items"), params, env, headers,nil, false, jsonKeys, options, telemetry_resource: "attachedItem", telemetry_operation: "create")
18
18
  end
19
19
 
20
20
  def self.update(id, params, env=nil, headers={})
@@ -23,14 +23,14 @@ module ChargeBee
23
23
  options = {
24
24
  :isIdempotent => true
25
25
  }
26
- Request.send('post', uri_path("attached_items",id.to_s), params, env, headers,nil, false, jsonKeys, options)
26
+ Request.send('post', uri_path("attached_items",id.to_s), params, env, headers,nil, false, jsonKeys, options, telemetry_resource: "attachedItem", telemetry_operation: "update")
27
27
  end
28
28
 
29
29
  def self.retrieve(id, params, env=nil, headers={})
30
30
  jsonKeys = {
31
31
  }
32
32
  options = {}
33
- Request.send('get', uri_path("attached_items",id.to_s), params, env, headers,nil, false, jsonKeys, options)
33
+ Request.send('get', uri_path("attached_items",id.to_s), params, env, headers,nil, false, jsonKeys, options, telemetry_resource: "attachedItem", telemetry_operation: "retrieve")
34
34
  end
35
35
 
36
36
  def self.delete(id, params, env=nil, headers={})
@@ -39,14 +39,14 @@ module ChargeBee
39
39
  options = {
40
40
  :isIdempotent => true
41
41
  }
42
- Request.send('post', uri_path("attached_items",id.to_s,"delete"), params, env, headers,nil, false, jsonKeys, options)
42
+ Request.send('post', uri_path("attached_items",id.to_s,"delete"), params, env, headers,nil, false, jsonKeys, options, telemetry_resource: "attachedItem", telemetry_operation: "delete")
43
43
  end
44
44
 
45
45
  def self.list(id, params={}, env=nil, headers={})
46
46
  jsonKeys = {
47
47
  }
48
48
  options = {}
49
- Request.send_list_request('get', uri_path("items",id.to_s,"attached_items"), params, env, headers,nil, false, jsonKeys, options)
49
+ Request.send_list_request('get', uri_path("items",id.to_s,"attached_items"), params, env, headers,nil, false, jsonKeys, options, telemetry_resource: "attachedItem", telemetry_operation: "list")
50
50
  end
51
51
 
52
52
  end # ~AttachedItem
@@ -12,14 +12,14 @@ module ChargeBee
12
12
  options = {
13
13
  :isIdempotent => true
14
14
  }
15
- Request.send('post', uri_path("business_entities","transfers"), params, env, headers,nil, false, jsonKeys, options)
15
+ Request.send('post', uri_path("business_entities","transfers"), params, env, headers,nil, false, jsonKeys, options, telemetry_resource: "businessEntity", telemetry_operation: "createTransfers")
16
16
  end
17
17
 
18
18
  def self.get_transfers(params={}, env=nil, headers={})
19
19
  jsonKeys = {
20
20
  }
21
21
  options = {}
22
- Request.send('get', uri_path("business_entities","transfers"), params, env, headers,nil, false, jsonKeys, options)
22
+ Request.send('get', uri_path("business_entities","transfers"), params, env, headers,nil, false, jsonKeys, options, telemetry_resource: "businessEntity", telemetry_operation: "getTransfers")
23
23
  end
24
24
 
25
25
  end # ~BusinessEntity
@@ -14,7 +14,7 @@ module ChargeBee
14
14
  jsonKeys = {
15
15
  }
16
16
  options = {}
17
- Request.send('get', uri_path("cards",id.to_s), {}, env, headers,nil, false, jsonKeys, options)
17
+ Request.send('get', uri_path("cards",id.to_s), {}, env, headers,nil, false, jsonKeys, options, telemetry_resource: "card", telemetry_operation: "retrieve")
18
18
  end
19
19
 
20
20
  def self.update_card_for_customer(id, params, env=nil, headers={})
@@ -23,7 +23,7 @@ module ChargeBee
23
23
  options = {
24
24
  :isIdempotent => true
25
25
  }
26
- Request.send('post', uri_path("customers",id.to_s,"credit_card"), params, env, headers,nil, false, jsonKeys, options)
26
+ Request.send('post', uri_path("customers",id.to_s,"credit_card"), params, env, headers,nil, false, jsonKeys, options, telemetry_resource: "card", telemetry_operation: "updateCardForCustomer")
27
27
  end
28
28
 
29
29
  def self.switch_gateway_for_customer(id, params, env=nil, headers={})
@@ -32,7 +32,7 @@ module ChargeBee
32
32
  options = {
33
33
  :isIdempotent => true
34
34
  }
35
- Request.send('post', uri_path("customers",id.to_s,"switch_gateway"), params, env, headers,nil, false, jsonKeys, options)
35
+ Request.send('post', uri_path("customers",id.to_s,"switch_gateway"), params, env, headers,nil, false, jsonKeys, options, telemetry_resource: "card", telemetry_operation: "switchGatewayForCustomer")
36
36
  end
37
37
 
38
38
  def self.copy_card_for_customer(id, params, env=nil, headers={})
@@ -41,7 +41,7 @@ module ChargeBee
41
41
  options = {
42
42
  :isIdempotent => true
43
43
  }
44
- Request.send('post', uri_path("customers",id.to_s,"copy_card"), params, env, headers,nil, false, jsonKeys, options)
44
+ Request.send('post', uri_path("customers",id.to_s,"copy_card"), params, env, headers,nil, false, jsonKeys, options, telemetry_resource: "card", telemetry_operation: "copyCardForCustomer")
45
45
  end
46
46
 
47
47
  def self.delete_card_for_customer(id, env=nil, headers={})
@@ -50,7 +50,7 @@ module ChargeBee
50
50
  options = {
51
51
  :isIdempotent => true
52
52
  }
53
- Request.send('post', uri_path("customers",id.to_s,"delete_card"), {}, env, headers,nil, false, jsonKeys, options)
53
+ Request.send('post', uri_path("customers",id.to_s,"delete_card"), {}, env, headers,nil, false, jsonKeys, options, telemetry_resource: "card", telemetry_operation: "deleteCardForCustomer")
54
54
  end
55
55
 
56
56
  end # ~Card
@@ -12,21 +12,21 @@ module ChargeBee
12
12
  options = {
13
13
  :isIdempotent => true
14
14
  }
15
- Request.send('post', uri_path("comments"), params, env, headers,nil, false, jsonKeys, options)
15
+ Request.send('post', uri_path("comments"), params, env, headers,nil, false, jsonKeys, options, telemetry_resource: "comment", telemetry_operation: "create")
16
16
  end
17
17
 
18
18
  def self.retrieve(id, env=nil, headers={})
19
19
  jsonKeys = {
20
20
  }
21
21
  options = {}
22
- Request.send('get', uri_path("comments",id.to_s), {}, env, headers,nil, false, jsonKeys, options)
22
+ Request.send('get', uri_path("comments",id.to_s), {}, env, headers,nil, false, jsonKeys, options, telemetry_resource: "comment", telemetry_operation: "retrieve")
23
23
  end
24
24
 
25
25
  def self.list(params={}, env=nil, headers={})
26
26
  jsonKeys = {
27
27
  }
28
28
  options = {}
29
- Request.send_list_request('get', uri_path("comments"), params, env, headers,nil, false, jsonKeys, options)
29
+ Request.send_list_request('get', uri_path("comments"), params, env, headers,nil, false, jsonKeys, options, telemetry_resource: "comment", telemetry_operation: "list")
30
30
  end
31
31
 
32
32
  def self.delete(id, env=nil, headers={})
@@ -35,7 +35,7 @@ module ChargeBee
35
35
  options = {
36
36
  :isIdempotent => true
37
37
  }
38
- Request.send('post', uri_path("comments",id.to_s,"delete"), {}, env, headers,nil, false, jsonKeys, options)
38
+ Request.send('post', uri_path("comments",id.to_s,"delete"), {}, env, headers,nil, false, jsonKeys, options, telemetry_resource: "comment", telemetry_operation: "delete")
39
39
  end
40
40
 
41
41
  end # ~Comment
@@ -10,7 +10,7 @@ module ChargeBee
10
10
  jsonKeys = {
11
11
  }
12
12
  options = {}
13
- Request.send_list_request('get', uri_path("configurations"), {}, env, headers,nil, false, jsonKeys, options)
13
+ Request.send_list_request('get', uri_path("configurations"), {}, env, headers,nil, false, jsonKeys, options, telemetry_resource: "configuration", telemetry_operation: "list")
14
14
  end
15
15
 
16
16
  end # ~Configuration
@@ -30,7 +30,7 @@ module ChargeBee
30
30
  options = {
31
31
  :isIdempotent => true
32
32
  }
33
- Request.send('post', uri_path("coupons"), params, env, headers,nil, false, jsonKeys, options)
33
+ Request.send('post', uri_path("coupons"), params, env, headers,nil, false, jsonKeys, options, telemetry_resource: "coupon", telemetry_operation: "create")
34
34
  end
35
35
 
36
36
  def self.create_for_items(params, env=nil, headers={})
@@ -44,7 +44,7 @@ module ChargeBee
44
44
  options = {
45
45
  :isIdempotent => true
46
46
  }
47
- Request.send('post', uri_path("coupons","create_for_items"), params, env, headers,nil, false, jsonKeys, options)
47
+ Request.send('post', uri_path("coupons","create_for_items"), params, env, headers,nil, false, jsonKeys, options, telemetry_resource: "coupon", telemetry_operation: "createForItems")
48
48
  end
49
49
 
50
50
  def self.update_for_items(id, params, env=nil, headers={})
@@ -58,21 +58,21 @@ module ChargeBee
58
58
  options = {
59
59
  :isIdempotent => true
60
60
  }
61
- Request.send('post', uri_path("coupons",id.to_s,"update_for_items"), params, env, headers,nil, false, jsonKeys, options)
61
+ Request.send('post', uri_path("coupons",id.to_s,"update_for_items"), params, env, headers,nil, false, jsonKeys, options, telemetry_resource: "coupon", telemetry_operation: "updateForItems")
62
62
  end
63
63
 
64
64
  def self.list(params={}, env=nil, headers={})
65
65
  jsonKeys = {
66
66
  }
67
67
  options = {}
68
- Request.send_list_request('get', uri_path("coupons"), params, env, headers,nil, false, jsonKeys, options)
68
+ Request.send_list_request('get', uri_path("coupons"), params, env, headers,nil, false, jsonKeys, options, telemetry_resource: "coupon", telemetry_operation: "list")
69
69
  end
70
70
 
71
71
  def self.retrieve(id, env=nil, headers={})
72
72
  jsonKeys = {
73
73
  }
74
74
  options = {}
75
- Request.send('get', uri_path("coupons",id.to_s), {}, env, headers,nil, false, jsonKeys, options)
75
+ Request.send('get', uri_path("coupons",id.to_s), {}, env, headers,nil, false, jsonKeys, options, telemetry_resource: "coupon", telemetry_operation: "retrieve")
76
76
  end
77
77
 
78
78
  def self.update(id, params={}, env=nil, headers={})
@@ -82,7 +82,7 @@ module ChargeBee
82
82
  options = {
83
83
  :isIdempotent => true
84
84
  }
85
- Request.send('post', uri_path("coupons",id.to_s), params, env, headers,nil, false, jsonKeys, options)
85
+ Request.send('post', uri_path("coupons",id.to_s), params, env, headers,nil, false, jsonKeys, options, telemetry_resource: "coupon", telemetry_operation: "update")
86
86
  end
87
87
 
88
88
  def self.delete(id, env=nil, headers={})
@@ -91,7 +91,7 @@ module ChargeBee
91
91
  options = {
92
92
  :isIdempotent => true
93
93
  }
94
- Request.send('post', uri_path("coupons",id.to_s,"delete"), {}, env, headers,nil, false, jsonKeys, options)
94
+ Request.send('post', uri_path("coupons",id.to_s,"delete"), {}, env, headers,nil, false, jsonKeys, options, telemetry_resource: "coupon", telemetry_operation: "delete")
95
95
  end
96
96
 
97
97
  def self.copy(params, env=nil, headers={})
@@ -100,7 +100,7 @@ module ChargeBee
100
100
  options = {
101
101
  :isIdempotent => true
102
102
  }
103
- Request.send('post', uri_path("coupons","copy"), params, env, headers,nil, false, jsonKeys, options)
103
+ Request.send('post', uri_path("coupons","copy"), params, env, headers,nil, false, jsonKeys, options, telemetry_resource: "coupon", telemetry_operation: "copy")
104
104
  end
105
105
 
106
106
  def self.unarchive(id, env=nil, headers={})
@@ -109,7 +109,7 @@ module ChargeBee
109
109
  options = {
110
110
  :isIdempotent => true
111
111
  }
112
- Request.send('post', uri_path("coupons",id.to_s,"unarchive"), {}, env, headers,nil, false, jsonKeys, options)
112
+ Request.send('post', uri_path("coupons",id.to_s,"unarchive"), {}, env, headers,nil, false, jsonKeys, options, telemetry_resource: "coupon", telemetry_operation: "unarchive")
113
113
  end
114
114
 
115
115
  end # ~Coupon
@@ -13,21 +13,21 @@ module ChargeBee
13
13
  options = {
14
14
  :isIdempotent => true
15
15
  }
16
- Request.send('post', uri_path("coupon_codes"), params, env, headers,nil, false, jsonKeys, options)
16
+ Request.send('post', uri_path("coupon_codes"), params, env, headers,nil, false, jsonKeys, options, telemetry_resource: "couponCode", telemetry_operation: "create")
17
17
  end
18
18
 
19
19
  def self.retrieve(id, env=nil, headers={})
20
20
  jsonKeys = {
21
21
  }
22
22
  options = {}
23
- Request.send('get', uri_path("coupon_codes",id.to_s), {}, env, headers,nil, false, jsonKeys, options)
23
+ Request.send('get', uri_path("coupon_codes",id.to_s), {}, env, headers,nil, false, jsonKeys, options, telemetry_resource: "couponCode", telemetry_operation: "retrieve")
24
24
  end
25
25
 
26
26
  def self.list(params={}, env=nil, headers={})
27
27
  jsonKeys = {
28
28
  }
29
29
  options = {}
30
- Request.send_list_request('get', uri_path("coupon_codes"), params, env, headers,nil, false, jsonKeys, options)
30
+ Request.send_list_request('get', uri_path("coupon_codes"), params, env, headers,nil, false, jsonKeys, options, telemetry_resource: "couponCode", telemetry_operation: "list")
31
31
  end
32
32
 
33
33
  def self.archive(id, env=nil, headers={})
@@ -36,7 +36,7 @@ module ChargeBee
36
36
  options = {
37
37
  :isIdempotent => true
38
38
  }
39
- Request.send('post', uri_path("coupon_codes",id.to_s,"archive"), {}, env, headers,nil, false, jsonKeys, options)
39
+ Request.send('post', uri_path("coupon_codes",id.to_s,"archive"), {}, env, headers,nil, false, jsonKeys, options, telemetry_resource: "couponCode", telemetry_operation: "archive")
40
40
  end
41
41
 
42
42
  end # ~CouponCode
@@ -13,7 +13,7 @@ module ChargeBee
13
13
  options = {
14
14
  :isIdempotent => true
15
15
  }
16
- Request.send('post', uri_path("coupon_sets"), params, env, headers,nil, false, jsonKeys, options)
16
+ Request.send('post', uri_path("coupon_sets"), params, env, headers,nil, false, jsonKeys, options, telemetry_resource: "couponSet", telemetry_operation: "create")
17
17
  end
18
18
 
19
19
  def self.add_coupon_codes(id, params={}, env=nil, headers={})
@@ -22,21 +22,21 @@ module ChargeBee
22
22
  options = {
23
23
  :isIdempotent => true
24
24
  }
25
- Request.send('post', uri_path("coupon_sets",id.to_s,"add_coupon_codes"), params, env, headers,nil, false, jsonKeys, options)
25
+ Request.send('post', uri_path("coupon_sets",id.to_s,"add_coupon_codes"), params, env, headers,nil, false, jsonKeys, options, telemetry_resource: "couponSet", telemetry_operation: "addCouponCodes")
26
26
  end
27
27
 
28
28
  def self.list(params={}, env=nil, headers={})
29
29
  jsonKeys = {
30
30
  }
31
31
  options = {}
32
- Request.send_list_request('get', uri_path("coupon_sets"), params, env, headers,nil, false, jsonKeys, options)
32
+ Request.send_list_request('get', uri_path("coupon_sets"), params, env, headers,nil, false, jsonKeys, options, telemetry_resource: "couponSet", telemetry_operation: "list")
33
33
  end
34
34
 
35
35
  def self.retrieve(id, env=nil, headers={})
36
36
  jsonKeys = {
37
37
  }
38
38
  options = {}
39
- Request.send('get', uri_path("coupon_sets",id.to_s), {}, env, headers,nil, false, jsonKeys, options)
39
+ Request.send('get', uri_path("coupon_sets",id.to_s), {}, env, headers,nil, false, jsonKeys, options, telemetry_resource: "couponSet", telemetry_operation: "retrieve")
40
40
  end
41
41
 
42
42
  def self.update(id, params={}, env=nil, headers={})
@@ -46,7 +46,7 @@ module ChargeBee
46
46
  options = {
47
47
  :isIdempotent => true
48
48
  }
49
- Request.send('post', uri_path("coupon_sets",id.to_s,"update"), params, env, headers,nil, false, jsonKeys, options)
49
+ Request.send('post', uri_path("coupon_sets",id.to_s,"update"), params, env, headers,nil, false, jsonKeys, options, telemetry_resource: "couponSet", telemetry_operation: "update")
50
50
  end
51
51
 
52
52
  def self.delete(id, env=nil, headers={})
@@ -55,7 +55,7 @@ module ChargeBee
55
55
  options = {
56
56
  :isIdempotent => true
57
57
  }
58
- Request.send('post', uri_path("coupon_sets",id.to_s,"delete"), {}, env, headers,nil, false, jsonKeys, options)
58
+ Request.send('post', uri_path("coupon_sets",id.to_s,"delete"), {}, env, headers,nil, false, jsonKeys, options, telemetry_resource: "couponSet", telemetry_operation: "delete")
59
59
  end
60
60
 
61
61
  def self.delete_unused_coupon_codes(id, env=nil, headers={})
@@ -64,7 +64,7 @@ module ChargeBee
64
64
  options = {
65
65
  :isIdempotent => true
66
66
  }
67
- Request.send('post', uri_path("coupon_sets",id.to_s,"delete_unused_coupon_codes"), {}, env, headers,nil, false, jsonKeys, options)
67
+ Request.send('post', uri_path("coupon_sets",id.to_s,"delete_unused_coupon_codes"), {}, env, headers,nil, false, jsonKeys, options, telemetry_resource: "couponSet", telemetry_operation: "deleteUnusedCouponCodes")
68
68
  end
69
69
 
70
70
  end # ~CouponSet