orb-billing 1.35.0 → 1.36.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 (258) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +18 -0
  3. data/README.md +1 -1
  4. data/lib/orb/client.rb +4 -0
  5. data/lib/orb/models/backfill_reflected_webhook_event.rb +180 -0
  6. data/lib/orb/models/backfill_reverted_webhook_event.rb +180 -0
  7. data/lib/orb/models/billable_metric_edited_webhook_event.rb +104 -0
  8. data/lib/orb/models/credit_block_accounting_sync_failed_webhook_event.rb +499 -0
  9. data/lib/orb/models/credit_block_accounting_sync_succeeded_webhook_event.rb +494 -0
  10. data/lib/orb/models/credit_note_accounting_sync_failed_webhook_event.rb +161 -0
  11. data/lib/orb/models/credit_note_accounting_sync_succeeded_webhook_event.rb +155 -0
  12. data/lib/orb/models/credit_note_issued_webhook_event.rb +65 -0
  13. data/lib/orb/models/credit_note_marked_as_void_webhook_event.rb +65 -0
  14. data/lib/orb/models/customer_accounting_sync_failed_webhook_event.rb +171 -0
  15. data/lib/orb/models/customer_accounting_sync_succeeded_webhook_event.rb +165 -0
  16. data/lib/orb/models/customer_balance_transaction_created_webhook_event.rb +212 -0
  17. data/lib/orb/models/customer_created_webhook_event.rb +81 -0
  18. data/lib/orb/models/customer_credit_balance_depleted_webhook_event.rb +560 -0
  19. data/lib/orb/models/customer_credit_balance_dropped_webhook_event.rb +566 -0
  20. data/lib/orb/models/customer_credit_balance_recovered_webhook_event.rb +560 -0
  21. data/lib/orb/models/customer_credit_ledger_incremented_webhook_event.rb +474 -0
  22. data/lib/orb/models/customer_edited_webhook_event.rb +344 -0
  23. data/lib/orb/models/data_exports_transfer_error_webhook_event.rb +100 -0
  24. data/lib/orb/models/data_exports_transfer_success_webhook_event.rb +94 -0
  25. data/lib/orb/models/event_unmatched_event_webhook_event.rb +105 -0
  26. data/lib/orb/models/ingestion_unmatched_customer_ids_webhook_event.rb +64 -0
  27. data/lib/orb/models/invoice_accounting_sync_failed_webhook_event.rb +164 -0
  28. data/lib/orb/models/invoice_accounting_sync_succeeded_webhook_event.rb +158 -0
  29. data/lib/orb/models/invoice_automation_schedule_step_executed_webhook_event.rb +338 -0
  30. data/lib/orb/models/invoice_cost_data_exported_webhook_event.rb +83 -0
  31. data/lib/orb/models/invoice_due_date_recalculation_canceled_webhook_event.rb +70 -0
  32. data/lib/orb/models/invoice_due_date_recalculation_completed_webhook_event.rb +70 -0
  33. data/lib/orb/models/invoice_due_date_recalculation_started_webhook_event.rb +64 -0
  34. data/lib/orb/models/invoice_dunning_schedule_created_webhook_event.rb +186 -0
  35. data/lib/orb/models/invoice_dunning_schedule_ended_webhook_event.rb +180 -0
  36. data/lib/orb/models/invoice_dunning_schedule_reset_webhook_event.rb +184 -0
  37. data/lib/orb/models/invoice_dunning_schedule_step_executed_webhook_event.rb +133 -0
  38. data/lib/orb/models/invoice_edited_webhook_event.rb +550 -0
  39. data/lib/orb/models/invoice_invoice_date_elapsed_webhook_event.rb +120 -0
  40. data/lib/orb/models/invoice_issue_failed_webhook_event.rb +79 -0
  41. data/lib/orb/models/invoice_issued_summary_webhook_event.rb +841 -0
  42. data/lib/orb/models/invoice_issued_webhook_event.rb +79 -0
  43. data/lib/orb/models/invoice_manually_marked_as_paid_webhook_event.rb +91 -0
  44. data/lib/orb/models/invoice_manually_marked_as_void_webhook_event.rb +68 -0
  45. data/lib/orb/models/invoice_payment_failed_webhook_event.rb +92 -0
  46. data/lib/orb/models/invoice_payment_processing_webhook_event.rb +85 -0
  47. data/lib/orb/models/invoice_payment_succeeded_webhook_event.rb +101 -0
  48. data/lib/orb/models/invoice_sync_failed_webhook_event.rb +85 -0
  49. data/lib/orb/models/invoice_sync_succeeded_webhook_event.rb +85 -0
  50. data/lib/orb/models/invoice_undo_mark_as_paid_webhook_event.rb +68 -0
  51. data/lib/orb/models/metric_events_dropped_by_watermark_webhook_event.rb +98 -0
  52. data/lib/orb/models/payment_method_created_webhook_event.rb +156 -0
  53. data/lib/orb/models/payment_method_deleted_webhook_event.rb +156 -0
  54. data/lib/orb/models/plan_default_version_set_webhook_event.rb +108 -0
  55. data/lib/orb/models/plan_version_created_webhook_event.rb +108 -0
  56. data/lib/orb/models/price_edited_webhook_event.rb +105 -0
  57. data/lib/orb/models/resource_event_test_webhook_event.rb +64 -0
  58. data/lib/orb/models/sales_order_accounting_sync_failed_webhook_event.rb +164 -0
  59. data/lib/orb/models/sales_order_accounting_sync_succeeded_webhook_event.rb +158 -0
  60. data/lib/orb/models/subscription_accounting_sync_failed_webhook_event.rb +178 -0
  61. data/lib/orb/models/subscription_accounting_sync_succeeded_webhook_event.rb +172 -0
  62. data/lib/orb/models/subscription_alert_disabled_webhook_event.rb +624 -0
  63. data/lib/orb/models/subscription_cancellation_scheduled_webhook_event.rb +93 -0
  64. data/lib/orb/models/subscription_cancellation_unscheduled_webhook_event.rb +93 -0
  65. data/lib/orb/models/subscription_cost_exceeded_webhook_event.rb +540 -0
  66. data/lib/orb/models/subscription_created_webhook_event.rb +82 -0
  67. data/lib/orb/models/subscription_edited_webhook_event.rb +134 -0
  68. data/lib/orb/models/subscription_ended_webhook_event.rb +82 -0
  69. data/lib/orb/models/subscription_fixed_fee_quantity_updated_webhook_event.rb +111 -0
  70. data/lib/orb/models/subscription_grouped_cost_exceeded_webhook_event.rb +655 -0
  71. data/lib/orb/models/subscription_invoicing_threshold_exceeded_webhook_event.rb +191 -0
  72. data/lib/orb/models/subscription_license_allocation_reset_webhook_event.rb +214 -0
  73. data/lib/orb/models/subscription_license_balance_threshold_reached_webhook_event.rb +652 -0
  74. data/lib/orb/models/subscription_plan_change_scheduled_webhook_event.rb +105 -0
  75. data/lib/orb/models/subscription_plan_changed_webhook_event.rb +93 -0
  76. data/lib/orb/models/subscription_plan_version_change_scheduled_webhook_event.rb +106 -0
  77. data/lib/orb/models/subscription_plan_version_changed_webhook_event.rb +105 -0
  78. data/lib/orb/models/subscription_spend_exceeded_webhook_event.rb +541 -0
  79. data/lib/orb/models/subscription_started_webhook_event.rb +82 -0
  80. data/lib/orb/models/subscription_trial_ended_webhook_event.rb +82 -0
  81. data/lib/orb/models/subscription_usage_exceeded_webhook_event.rb +548 -0
  82. data/lib/orb/models/transaction_accounting_sync_failed_webhook_event.rb +236 -0
  83. data/lib/orb/models/transaction_accounting_sync_succeeded_webhook_event.rb +232 -0
  84. data/lib/orb/models/unwrap_webhook_event.rb +250 -0
  85. data/lib/orb/models/webhook_unwrap_params.rb +14 -0
  86. data/lib/orb/models.rb +180 -0
  87. data/lib/orb/resources/webhooks.rb +22 -0
  88. data/lib/orb/version.rb +1 -1
  89. data/lib/orb.rb +82 -0
  90. data/rbi/orb/client.rbi +3 -0
  91. data/rbi/orb/models/backfill_reflected_webhook_event.rbi +274 -0
  92. data/rbi/orb/models/backfill_reverted_webhook_event.rbi +271 -0
  93. data/rbi/orb/models/billable_metric_edited_webhook_event.rbi +198 -0
  94. data/rbi/orb/models/credit_block_accounting_sync_failed_webhook_event.rbi +1039 -0
  95. data/rbi/orb/models/credit_block_accounting_sync_succeeded_webhook_event.rbi +1034 -0
  96. data/rbi/orb/models/credit_note_accounting_sync_failed_webhook_event.rbi +315 -0
  97. data/rbi/orb/models/credit_note_accounting_sync_succeeded_webhook_event.rbi +310 -0
  98. data/rbi/orb/models/credit_note_issued_webhook_event.rbi +98 -0
  99. data/rbi/orb/models/credit_note_marked_as_void_webhook_event.rbi +102 -0
  100. data/rbi/orb/models/customer_accounting_sync_failed_webhook_event.rbi +339 -0
  101. data/rbi/orb/models/customer_accounting_sync_succeeded_webhook_event.rbi +335 -0
  102. data/rbi/orb/models/customer_balance_transaction_created_webhook_event.rbi +437 -0
  103. data/rbi/orb/models/customer_created_webhook_event.rbi +128 -0
  104. data/rbi/orb/models/customer_credit_balance_depleted_webhook_event.rbi +1091 -0
  105. data/rbi/orb/models/customer_credit_balance_dropped_webhook_event.rbi +1096 -0
  106. data/rbi/orb/models/customer_credit_balance_recovered_webhook_event.rbi +1091 -0
  107. data/rbi/orb/models/customer_credit_ledger_incremented_webhook_event.rbi +987 -0
  108. data/rbi/orb/models/customer_edited_webhook_event.rbi +599 -0
  109. data/rbi/orb/models/data_exports_transfer_error_webhook_event.rbi +170 -0
  110. data/rbi/orb/models/data_exports_transfer_success_webhook_event.rbi +165 -0
  111. data/rbi/orb/models/event_unmatched_event_webhook_event.rbi +193 -0
  112. data/rbi/orb/models/ingestion_unmatched_customer_ids_webhook_event.rbi +132 -0
  113. data/rbi/orb/models/invoice_accounting_sync_failed_webhook_event.rbi +319 -0
  114. data/rbi/orb/models/invoice_accounting_sync_succeeded_webhook_event.rbi +312 -0
  115. data/rbi/orb/models/invoice_automation_schedule_step_executed_webhook_event.rbi +614 -0
  116. data/rbi/orb/models/invoice_cost_data_exported_webhook_event.rbi +144 -0
  117. data/rbi/orb/models/invoice_due_date_recalculation_canceled_webhook_event.rbi +139 -0
  118. data/rbi/orb/models/invoice_due_date_recalculation_completed_webhook_event.rbi +139 -0
  119. data/rbi/orb/models/invoice_due_date_recalculation_started_webhook_event.rbi +132 -0
  120. data/rbi/orb/models/invoice_dunning_schedule_created_webhook_event.rbi +331 -0
  121. data/rbi/orb/models/invoice_dunning_schedule_ended_webhook_event.rbi +324 -0
  122. data/rbi/orb/models/invoice_dunning_schedule_reset_webhook_event.rbi +329 -0
  123. data/rbi/orb/models/invoice_dunning_schedule_step_executed_webhook_event.rbi +250 -0
  124. data/rbi/orb/models/invoice_edited_webhook_event.rbi +942 -0
  125. data/rbi/orb/models/invoice_invoice_date_elapsed_webhook_event.rbi +251 -0
  126. data/rbi/orb/models/invoice_issue_failed_webhook_event.rbi +132 -0
  127. data/rbi/orb/models/invoice_issued_summary_webhook_event.rbi +1432 -0
  128. data/rbi/orb/models/invoice_issued_webhook_event.rbi +134 -0
  129. data/rbi/orb/models/invoice_manually_marked_as_paid_webhook_event.rbi +165 -0
  130. data/rbi/orb/models/invoice_manually_marked_as_void_webhook_event.rbi +114 -0
  131. data/rbi/orb/models/invoice_payment_failed_webhook_event.rbi +157 -0
  132. data/rbi/orb/models/invoice_payment_processing_webhook_event.rbi +156 -0
  133. data/rbi/orb/models/invoice_payment_succeeded_webhook_event.rbi +175 -0
  134. data/rbi/orb/models/invoice_sync_failed_webhook_event.rbi +147 -0
  135. data/rbi/orb/models/invoice_sync_succeeded_webhook_event.rbi +147 -0
  136. data/rbi/orb/models/invoice_undo_mark_as_paid_webhook_event.rbi +106 -0
  137. data/rbi/orb/models/metric_events_dropped_by_watermark_webhook_event.rbi +167 -0
  138. data/rbi/orb/models/payment_method_created_webhook_event.rbi +259 -0
  139. data/rbi/orb/models/payment_method_deleted_webhook_event.rbi +259 -0
  140. data/rbi/orb/models/plan_default_version_set_webhook_event.rbi +196 -0
  141. data/rbi/orb/models/plan_version_created_webhook_event.rbi +190 -0
  142. data/rbi/orb/models/price_edited_webhook_event.rbi +235 -0
  143. data/rbi/orb/models/resource_event_test_webhook_event.rbi +116 -0
  144. data/rbi/orb/models/sales_order_accounting_sync_failed_webhook_event.rbi +321 -0
  145. data/rbi/orb/models/sales_order_accounting_sync_succeeded_webhook_event.rbi +316 -0
  146. data/rbi/orb/models/subscription_accounting_sync_failed_webhook_event.rbi +353 -0
  147. data/rbi/orb/models/subscription_accounting_sync_succeeded_webhook_event.rbi +346 -0
  148. data/rbi/orb/models/subscription_alert_disabled_webhook_event.rbi +1232 -0
  149. data/rbi/orb/models/subscription_cancellation_scheduled_webhook_event.rbi +179 -0
  150. data/rbi/orb/models/subscription_cancellation_unscheduled_webhook_event.rbi +183 -0
  151. data/rbi/orb/models/subscription_cost_exceeded_webhook_event.rbi +1034 -0
  152. data/rbi/orb/models/subscription_created_webhook_event.rbi +132 -0
  153. data/rbi/orb/models/subscription_edited_webhook_event.rbi +247 -0
  154. data/rbi/orb/models/subscription_ended_webhook_event.rbi +132 -0
  155. data/rbi/orb/models/subscription_fixed_fee_quantity_updated_webhook_event.rbi +206 -0
  156. data/rbi/orb/models/subscription_grouped_cost_exceeded_webhook_event.rbi +1262 -0
  157. data/rbi/orb/models/subscription_invoicing_threshold_exceeded_webhook_event.rbi +374 -0
  158. data/rbi/orb/models/subscription_license_allocation_reset_webhook_event.rbi +421 -0
  159. data/rbi/orb/models/subscription_license_balance_threshold_reached_webhook_event.rbi +1265 -0
  160. data/rbi/orb/models/subscription_plan_change_scheduled_webhook_event.rbi +198 -0
  161. data/rbi/orb/models/subscription_plan_changed_webhook_event.rbi +169 -0
  162. data/rbi/orb/models/subscription_plan_version_change_scheduled_webhook_event.rbi +205 -0
  163. data/rbi/orb/models/subscription_plan_version_changed_webhook_event.rbi +199 -0
  164. data/rbi/orb/models/subscription_spend_exceeded_webhook_event.rbi +1035 -0
  165. data/rbi/orb/models/subscription_started_webhook_event.rbi +132 -0
  166. data/rbi/orb/models/subscription_trial_ended_webhook_event.rbi +136 -0
  167. data/rbi/orb/models/subscription_usage_exceeded_webhook_event.rbi +1041 -0
  168. data/rbi/orb/models/transaction_accounting_sync_failed_webhook_event.rbi +455 -0
  169. data/rbi/orb/models/transaction_accounting_sync_succeeded_webhook_event.rbi +449 -0
  170. data/rbi/orb/models/unwrap_webhook_event.rbi +99 -0
  171. data/rbi/orb/models/webhook_unwrap_params.rbi +25 -0
  172. data/rbi/orb/models.rbi +224 -0
  173. data/rbi/orb/resources/webhooks.rbi +103 -0
  174. data/sig/orb/client.rbs +2 -0
  175. data/sig/orb/models/backfill_reflected_webhook_event.rbs +130 -0
  176. data/sig/orb/models/backfill_reverted_webhook_event.rbs +130 -0
  177. data/sig/orb/models/billable_metric_edited_webhook_event.rbs +94 -0
  178. data/sig/orb/models/credit_block_accounting_sync_failed_webhook_event.rbs +412 -0
  179. data/sig/orb/models/credit_block_accounting_sync_succeeded_webhook_event.rbs +407 -0
  180. data/sig/orb/models/credit_note_accounting_sync_failed_webhook_event.rbs +147 -0
  181. data/sig/orb/models/credit_note_accounting_sync_succeeded_webhook_event.rbs +142 -0
  182. data/sig/orb/models/credit_note_issued_webhook_event.rbs +50 -0
  183. data/sig/orb/models/credit_note_marked_as_void_webhook_event.rbs +50 -0
  184. data/sig/orb/models/customer_accounting_sync_failed_webhook_event.rbs +142 -0
  185. data/sig/orb/models/customer_accounting_sync_succeeded_webhook_event.rbs +137 -0
  186. data/sig/orb/models/customer_balance_transaction_created_webhook_event.rbs +171 -0
  187. data/sig/orb/models/customer_created_webhook_event.rbs +50 -0
  188. data/sig/orb/models/customer_credit_balance_depleted_webhook_event.rbs +374 -0
  189. data/sig/orb/models/customer_credit_balance_dropped_webhook_event.rbs +379 -0
  190. data/sig/orb/models/customer_credit_balance_recovered_webhook_event.rbs +374 -0
  191. data/sig/orb/models/customer_credit_ledger_incremented_webhook_event.rbs +364 -0
  192. data/sig/orb/models/customer_edited_webhook_event.rbs +139 -0
  193. data/sig/orb/models/data_exports_transfer_error_webhook_event.rbs +92 -0
  194. data/sig/orb/models/data_exports_transfer_success_webhook_event.rbs +87 -0
  195. data/sig/orb/models/event_unmatched_event_webhook_event.rbs +102 -0
  196. data/sig/orb/models/ingestion_unmatched_customer_ids_webhook_event.rbs +55 -0
  197. data/sig/orb/models/invoice_accounting_sync_failed_webhook_event.rbs +147 -0
  198. data/sig/orb/models/invoice_accounting_sync_succeeded_webhook_event.rbs +142 -0
  199. data/sig/orb/models/invoice_automation_schedule_step_executed_webhook_event.rbs +313 -0
  200. data/sig/orb/models/invoice_cost_data_exported_webhook_event.rbs +73 -0
  201. data/sig/orb/models/invoice_due_date_recalculation_canceled_webhook_event.rbs +57 -0
  202. data/sig/orb/models/invoice_due_date_recalculation_completed_webhook_event.rbs +57 -0
  203. data/sig/orb/models/invoice_due_date_recalculation_started_webhook_event.rbs +55 -0
  204. data/sig/orb/models/invoice_dunning_schedule_created_webhook_event.rbs +171 -0
  205. data/sig/orb/models/invoice_dunning_schedule_ended_webhook_event.rbs +166 -0
  206. data/sig/orb/models/invoice_dunning_schedule_reset_webhook_event.rbs +156 -0
  207. data/sig/orb/models/invoice_dunning_schedule_step_executed_webhook_event.rbs +119 -0
  208. data/sig/orb/models/invoice_edited_webhook_event.rbs +388 -0
  209. data/sig/orb/models/invoice_invoice_date_elapsed_webhook_event.rbs +111 -0
  210. data/sig/orb/models/invoice_issue_failed_webhook_event.rbs +60 -0
  211. data/sig/orb/models/invoice_issued_summary_webhook_event.rbs +504 -0
  212. data/sig/orb/models/invoice_issued_webhook_event.rbs +60 -0
  213. data/sig/orb/models/invoice_manually_marked_as_paid_webhook_event.rbs +73 -0
  214. data/sig/orb/models/invoice_manually_marked_as_void_webhook_event.rbs +50 -0
  215. data/sig/orb/models/invoice_payment_failed_webhook_event.rbs +77 -0
  216. data/sig/orb/models/invoice_payment_processing_webhook_event.rbs +71 -0
  217. data/sig/orb/models/invoice_payment_succeeded_webhook_event.rbs +82 -0
  218. data/sig/orb/models/invoice_sync_failed_webhook_event.rbs +69 -0
  219. data/sig/orb/models/invoice_sync_succeeded_webhook_event.rbs +69 -0
  220. data/sig/orb/models/invoice_undo_mark_as_paid_webhook_event.rbs +50 -0
  221. data/sig/orb/models/metric_events_dropped_by_watermark_webhook_event.rbs +82 -0
  222. data/sig/orb/models/payment_method_created_webhook_event.rbs +112 -0
  223. data/sig/orb/models/payment_method_deleted_webhook_event.rbs +112 -0
  224. data/sig/orb/models/plan_default_version_set_webhook_event.rbs +94 -0
  225. data/sig/orb/models/plan_version_created_webhook_event.rbs +91 -0
  226. data/sig/orb/models/price_edited_webhook_event.rbs +77 -0
  227. data/sig/orb/models/resource_event_test_webhook_event.rbs +57 -0
  228. data/sig/orb/models/sales_order_accounting_sync_failed_webhook_event.rbs +147 -0
  229. data/sig/orb/models/sales_order_accounting_sync_succeeded_webhook_event.rbs +142 -0
  230. data/sig/orb/models/subscription_accounting_sync_failed_webhook_event.rbs +147 -0
  231. data/sig/orb/models/subscription_accounting_sync_succeeded_webhook_event.rbs +142 -0
  232. data/sig/orb/models/subscription_alert_disabled_webhook_event.rbs +444 -0
  233. data/sig/orb/models/subscription_cancellation_scheduled_webhook_event.rbs +60 -0
  234. data/sig/orb/models/subscription_cancellation_unscheduled_webhook_event.rbs +60 -0
  235. data/sig/orb/models/subscription_cost_exceeded_webhook_event.rbs +362 -0
  236. data/sig/orb/models/subscription_created_webhook_event.rbs +50 -0
  237. data/sig/orb/models/subscription_edited_webhook_event.rbs +109 -0
  238. data/sig/orb/models/subscription_ended_webhook_event.rbs +50 -0
  239. data/sig/orb/models/subscription_fixed_fee_quantity_updated_webhook_event.rbs +82 -0
  240. data/sig/orb/models/subscription_grouped_cost_exceeded_webhook_event.rbs +465 -0
  241. data/sig/orb/models/subscription_invoicing_threshold_exceeded_webhook_event.rbs +158 -0
  242. data/sig/orb/models/subscription_license_allocation_reset_webhook_event.rbs +180 -0
  243. data/sig/orb/models/subscription_license_balance_threshold_reached_webhook_event.rbs +460 -0
  244. data/sig/orb/models/subscription_plan_change_scheduled_webhook_event.rbs +73 -0
  245. data/sig/orb/models/subscription_plan_changed_webhook_event.rbs +60 -0
  246. data/sig/orb/models/subscription_plan_version_change_scheduled_webhook_event.rbs +77 -0
  247. data/sig/orb/models/subscription_plan_version_changed_webhook_event.rbs +77 -0
  248. data/sig/orb/models/subscription_spend_exceeded_webhook_event.rbs +362 -0
  249. data/sig/orb/models/subscription_started_webhook_event.rbs +50 -0
  250. data/sig/orb/models/subscription_trial_ended_webhook_event.rbs +50 -0
  251. data/sig/orb/models/subscription_usage_exceeded_webhook_event.rbs +367 -0
  252. data/sig/orb/models/transaction_accounting_sync_failed_webhook_event.rbs +205 -0
  253. data/sig/orb/models/transaction_accounting_sync_succeeded_webhook_event.rbs +200 -0
  254. data/sig/orb/models/unwrap_webhook_event.rbs +90 -0
  255. data/sig/orb/models/webhook_unwrap_params.rbs +14 -0
  256. data/sig/orb/models.rbs +162 -0
  257. data/sig/orb/resources/webhooks.rbs +89 -0
  258. metadata +247 -1
@@ -0,0 +1,652 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Orb
4
+ module Models
5
+ class SubscriptionLicenseBalanceThresholdReachedWebhookEvent < Orb::Internal::Type::BaseModel
6
+ # @!attribute id
7
+ # The ID of this webhook event.
8
+ #
9
+ # @return [String]
10
+ required :id, String
11
+
12
+ # @!attribute created_at
13
+ # The time at which this event was created, to the second.
14
+ #
15
+ # @return [Time]
16
+ required :created_at, Time
17
+
18
+ # @!attribute properties
19
+ # Every license that crossed a threshold for one alert, batched into a single
20
+ # message. For account-wide alerts the licenses may span several license types.
21
+ #
22
+ # @return [Orb::Models::SubscriptionLicenseBalanceThresholdReachedWebhookEvent::Properties]
23
+ required :properties, -> { Orb::SubscriptionLicenseBalanceThresholdReachedWebhookEvent::Properties }
24
+
25
+ # @!attribute subscription
26
+ # A lightweight subscription representation for webhook payloads.
27
+ #
28
+ # This avoids the expensive to_subscription_params() call required for full
29
+ # serialization.
30
+ #
31
+ # @return [Orb::Models::SubscriptionLicenseBalanceThresholdReachedWebhookEvent::Subscription]
32
+ required :subscription, -> { Orb::SubscriptionLicenseBalanceThresholdReachedWebhookEvent::Subscription }
33
+
34
+ # @!attribute type
35
+ # The event this payload describes.
36
+ #
37
+ # @return [Symbol, Orb::Models::SubscriptionLicenseBalanceThresholdReachedWebhookEvent::Type]
38
+ required :type, enum: -> { Orb::SubscriptionLicenseBalanceThresholdReachedWebhookEvent::Type }
39
+
40
+ # @!method initialize(id:, created_at:, properties:, subscription:, type:)
41
+ # Some parameter documentations has been truncated, see
42
+ # {Orb::Models::SubscriptionLicenseBalanceThresholdReachedWebhookEvent} for more
43
+ # details.
44
+ #
45
+ # Issued when a license balance threshold is reached.
46
+ #
47
+ # @param id [String] The ID of this webhook event.
48
+ #
49
+ # @param created_at [Time] The time at which this event was created, to the second.
50
+ #
51
+ # @param properties [Orb::Models::SubscriptionLicenseBalanceThresholdReachedWebhookEvent::Properties] Every license that crossed a threshold for one alert, batched into a single mess
52
+ #
53
+ # @param subscription [Orb::Models::SubscriptionLicenseBalanceThresholdReachedWebhookEvent::Subscription] A lightweight subscription representation for webhook payloads.
54
+ #
55
+ # @param type [Symbol, Orb::Models::SubscriptionLicenseBalanceThresholdReachedWebhookEvent::Type] The event this payload describes.
56
+
57
+ # @see Orb::Models::SubscriptionLicenseBalanceThresholdReachedWebhookEvent#properties
58
+ class Properties < Orb::Internal::Type::BaseModel
59
+ # @!attribute alert_configuration
60
+ # [Alerts within Orb](/product-catalog/configuring-alerts) monitor spending,
61
+ # usage, or credit balance and trigger webhooks when a threshold is exceeded.
62
+ #
63
+ # Alerts created through the API can be scoped to either customers or
64
+ # subscriptions.
65
+ #
66
+ # @return [Orb::Models::SubscriptionLicenseBalanceThresholdReachedWebhookEvent::Properties::AlertConfiguration]
67
+ required :alert_configuration,
68
+ -> { Orb::SubscriptionLicenseBalanceThresholdReachedWebhookEvent::Properties::AlertConfiguration }
69
+
70
+ # @!attribute licenses
71
+ #
72
+ # @return [Array<Orb::Models::SubscriptionLicenseBalanceThresholdReachedWebhookEvent::Properties::License>]
73
+ required :licenses,
74
+ -> { Orb::Internal::Type::ArrayOf[Orb::SubscriptionLicenseBalanceThresholdReachedWebhookEvent::Properties::License] }
75
+
76
+ # @!attribute timeframe_end
77
+ #
78
+ # @return [Time]
79
+ required :timeframe_end, Time
80
+
81
+ # @!attribute timeframe_start
82
+ #
83
+ # @return [Time]
84
+ required :timeframe_start, Time
85
+
86
+ # @!method initialize(alert_configuration:, licenses:, timeframe_end:, timeframe_start:)
87
+ # Some parameter documentations has been truncated, see
88
+ # {Orb::Models::SubscriptionLicenseBalanceThresholdReachedWebhookEvent::Properties}
89
+ # for more details.
90
+ #
91
+ # Every license that crossed a threshold for one alert, batched into a single
92
+ # message. For account-wide alerts the licenses may span several license types.
93
+ #
94
+ # @param alert_configuration [Orb::Models::SubscriptionLicenseBalanceThresholdReachedWebhookEvent::Properties::AlertConfiguration] [Alerts within Orb](/product-catalog/configuring-alerts) monitor spending,
95
+ #
96
+ # @param licenses [Array<Orb::Models::SubscriptionLicenseBalanceThresholdReachedWebhookEvent::Properties::License>]
97
+ #
98
+ # @param timeframe_end [Time]
99
+ #
100
+ # @param timeframe_start [Time]
101
+
102
+ # @see Orb::Models::SubscriptionLicenseBalanceThresholdReachedWebhookEvent::Properties#alert_configuration
103
+ class AlertConfiguration < Orb::Internal::Type::BaseModel
104
+ # @!attribute id
105
+ # Also referred to as alert_id in this documentation.
106
+ #
107
+ # @return [String]
108
+ required :id, String
109
+
110
+ # @!attribute created_at
111
+ # The creation time of the resource in Orb.
112
+ #
113
+ # @return [Time]
114
+ required :created_at, Time
115
+
116
+ # @!attribute currency
117
+ # The name of the currency the credit balance or invoice cost is denominated in.
118
+ #
119
+ # @return [String, nil]
120
+ required :currency, String, nil?: true
121
+
122
+ # @!attribute customer
123
+ # The customer the alert applies to.
124
+ #
125
+ # @return [Orb::Models::CustomerMinified, nil]
126
+ required :customer, -> { Orb::CustomerMinified }, nil?: true
127
+
128
+ # @!attribute enabled
129
+ # Whether the alert is enabled or disabled.
130
+ #
131
+ # @return [Boolean]
132
+ required :enabled, Orb::Internal::Type::Boolean
133
+
134
+ # @!attribute metric
135
+ # The metric the alert applies to.
136
+ #
137
+ # @return [Orb::Models::SubscriptionLicenseBalanceThresholdReachedWebhookEvent::Properties::AlertConfiguration::Metric, nil]
138
+ required :metric,
139
+ -> {
140
+ Orb::SubscriptionLicenseBalanceThresholdReachedWebhookEvent::Properties::AlertConfiguration::Metric
141
+ },
142
+ nil?: true
143
+
144
+ # @!attribute plan
145
+ # The plan the alert applies to.
146
+ #
147
+ # @return [Orb::Models::SubscriptionLicenseBalanceThresholdReachedWebhookEvent::Properties::AlertConfiguration::Plan, nil]
148
+ required :plan,
149
+ -> {
150
+ Orb::SubscriptionLicenseBalanceThresholdReachedWebhookEvent::Properties::AlertConfiguration::Plan
151
+ },
152
+ nil?: true
153
+
154
+ # @!attribute subscription
155
+ # The subscription the alert applies to.
156
+ #
157
+ # @return [Orb::Models::SubscriptionMinified, nil]
158
+ required :subscription, -> { Orb::SubscriptionMinified }, nil?: true
159
+
160
+ # @!attribute thresholds
161
+ # The thresholds that define the conditions under which the alert will be
162
+ # triggered.
163
+ #
164
+ # @return [Array<Orb::Models::SubscriptionLicenseBalanceThresholdReachedWebhookEvent::Properties::AlertConfiguration::Threshold>, nil]
165
+ required :thresholds,
166
+ -> {
167
+ Orb::Internal::Type::ArrayOf[Orb::SubscriptionLicenseBalanceThresholdReachedWebhookEvent::Properties::AlertConfiguration::Threshold]
168
+ },
169
+ nil?: true
170
+
171
+ # @!attribute type
172
+ # The type of alert. This must be a valid alert type.
173
+ #
174
+ # @return [Symbol, Orb::Models::SubscriptionLicenseBalanceThresholdReachedWebhookEvent::Properties::AlertConfiguration::Type]
175
+ required :type,
176
+ enum: -> { Orb::SubscriptionLicenseBalanceThresholdReachedWebhookEvent::Properties::AlertConfiguration::Type }
177
+
178
+ # @!attribute balance_alert_status
179
+ # The current status of the alert. This field is only present for credit balance
180
+ # alerts.
181
+ #
182
+ # @return [Array<Orb::Models::SubscriptionLicenseBalanceThresholdReachedWebhookEvent::Properties::AlertConfiguration::BalanceAlertStatus>, nil]
183
+ optional :balance_alert_status,
184
+ -> do
185
+ Orb::Internal::Type::ArrayOf[
186
+ Orb::SubscriptionLicenseBalanceThresholdReachedWebhookEvent::Properties::AlertConfiguration::BalanceAlertStatus
187
+ ]
188
+ end,
189
+ nil?: true
190
+
191
+ # @!attribute grouping_keys
192
+ # The property keys to group cost alerts by. Only present for cost alerts with
193
+ # grouping enabled.
194
+ #
195
+ # @return [Array<String>, nil]
196
+ optional :grouping_keys, Orb::Internal::Type::ArrayOf[String], nil?: true
197
+
198
+ # @!attribute license_type
199
+ # Minified license type for alert serialization.
200
+ #
201
+ # @return [Orb::Models::SubscriptionLicenseBalanceThresholdReachedWebhookEvent::Properties::AlertConfiguration::LicenseType, nil]
202
+ optional :license_type,
203
+ -> {
204
+ Orb::SubscriptionLicenseBalanceThresholdReachedWebhookEvent::Properties::AlertConfiguration::LicenseType
205
+ },
206
+ nil?: true
207
+
208
+ # @!attribute price_filters
209
+ # Filters scoping which prices are included in spend and grouped cost alert
210
+ # evaluation. Alerts use the price_id, item_id, and price_type fields only; the
211
+ # alert's pricing unit is reported by currency.
212
+ #
213
+ # @return [Array<Orb::Models::SubscriptionLicenseBalanceThresholdReachedWebhookEvent::Properties::AlertConfiguration::PriceFilter>, nil]
214
+ optional :price_filters,
215
+ -> {
216
+ Orb::Internal::Type::ArrayOf[Orb::SubscriptionLicenseBalanceThresholdReachedWebhookEvent::Properties::AlertConfiguration::PriceFilter]
217
+ },
218
+ nil?: true
219
+
220
+ # @!attribute threshold_overrides
221
+ # Per-group threshold overrides. Each override maps a specific combination of
222
+ # grouping_keys values to a replacement threshold list. Only present for grouped
223
+ # cost alerts that have at least one override.
224
+ #
225
+ # @return [Array<Orb::Models::SubscriptionLicenseBalanceThresholdReachedWebhookEvent::Properties::AlertConfiguration::ThresholdOverride>, nil]
226
+ optional :threshold_overrides,
227
+ -> do
228
+ Orb::Internal::Type::ArrayOf[
229
+ Orb::SubscriptionLicenseBalanceThresholdReachedWebhookEvent::Properties::AlertConfiguration::ThresholdOverride
230
+ ]
231
+ end,
232
+ nil?: true
233
+
234
+ # @!method initialize(id:, created_at:, currency:, customer:, enabled:, metric:, plan:, subscription:, thresholds:, type:, balance_alert_status: nil, grouping_keys: nil, license_type: nil, price_filters: nil, threshold_overrides: nil)
235
+ # Some parameter documentations has been truncated, see
236
+ # {Orb::Models::SubscriptionLicenseBalanceThresholdReachedWebhookEvent::Properties::AlertConfiguration}
237
+ # for more details.
238
+ #
239
+ # [Alerts within Orb](/product-catalog/configuring-alerts) monitor spending,
240
+ # usage, or credit balance and trigger webhooks when a threshold is exceeded.
241
+ #
242
+ # Alerts created through the API can be scoped to either customers or
243
+ # subscriptions.
244
+ #
245
+ # @param id [String] Also referred to as alert_id in this documentation.
246
+ #
247
+ # @param created_at [Time] The creation time of the resource in Orb.
248
+ #
249
+ # @param currency [String, nil] The name of the currency the credit balance or invoice cost is denominated in.
250
+ #
251
+ # @param customer [Orb::Models::CustomerMinified, nil] The customer the alert applies to.
252
+ #
253
+ # @param enabled [Boolean] Whether the alert is enabled or disabled.
254
+ #
255
+ # @param metric [Orb::Models::SubscriptionLicenseBalanceThresholdReachedWebhookEvent::Properties::AlertConfiguration::Metric, nil] The metric the alert applies to.
256
+ #
257
+ # @param plan [Orb::Models::SubscriptionLicenseBalanceThresholdReachedWebhookEvent::Properties::AlertConfiguration::Plan, nil] The plan the alert applies to.
258
+ #
259
+ # @param subscription [Orb::Models::SubscriptionMinified, nil] The subscription the alert applies to.
260
+ #
261
+ # @param thresholds [Array<Orb::Models::SubscriptionLicenseBalanceThresholdReachedWebhookEvent::Properties::AlertConfiguration::Threshold>, nil] The thresholds that define the conditions under which the alert will be triggere
262
+ #
263
+ # @param type [Symbol, Orb::Models::SubscriptionLicenseBalanceThresholdReachedWebhookEvent::Properties::AlertConfiguration::Type] The type of alert. This must be a valid alert type.
264
+ #
265
+ # @param balance_alert_status [Array<Orb::Models::SubscriptionLicenseBalanceThresholdReachedWebhookEvent::Properties::AlertConfiguration::BalanceAlertStatus>, nil] The current status of the alert. This field is only present for credit balance a
266
+ #
267
+ # @param grouping_keys [Array<String>, nil] The property keys to group cost alerts by. Only present for cost alerts with gro
268
+ #
269
+ # @param license_type [Orb::Models::SubscriptionLicenseBalanceThresholdReachedWebhookEvent::Properties::AlertConfiguration::LicenseType, nil] Minified license type for alert serialization.
270
+ #
271
+ # @param price_filters [Array<Orb::Models::SubscriptionLicenseBalanceThresholdReachedWebhookEvent::Properties::AlertConfiguration::PriceFilter>, nil] Filters scoping which prices are included in spend and grouped cost alert evalua
272
+ #
273
+ # @param threshold_overrides [Array<Orb::Models::SubscriptionLicenseBalanceThresholdReachedWebhookEvent::Properties::AlertConfiguration::ThresholdOverride>, nil] Per-group threshold overrides. Each override maps a specific combination of grou
274
+
275
+ # @see Orb::Models::SubscriptionLicenseBalanceThresholdReachedWebhookEvent::Properties::AlertConfiguration#metric
276
+ class Metric < Orb::Internal::Type::BaseModel
277
+ # @!attribute id
278
+ #
279
+ # @return [String]
280
+ required :id, String
281
+
282
+ # @!method initialize(id:)
283
+ # The metric the alert applies to.
284
+ #
285
+ # @param id [String]
286
+ end
287
+
288
+ # @see Orb::Models::SubscriptionLicenseBalanceThresholdReachedWebhookEvent::Properties::AlertConfiguration#plan
289
+ class Plan < Orb::Internal::Type::BaseModel
290
+ # @!attribute id
291
+ #
292
+ # @return [String, nil]
293
+ required :id, String, nil?: true
294
+
295
+ # @!attribute external_plan_id
296
+ # An optional user-defined ID for this plan resource, used throughout the system
297
+ # as an alias for this Plan. Use this field to identify a plan by an existing
298
+ # identifier in your system.
299
+ #
300
+ # @return [String, nil]
301
+ required :external_plan_id, String, nil?: true
302
+
303
+ # @!attribute name
304
+ #
305
+ # @return [String, nil]
306
+ required :name, String, nil?: true
307
+
308
+ # @!attribute plan_version
309
+ #
310
+ # @return [String]
311
+ required :plan_version, String
312
+
313
+ # @!method initialize(id:, external_plan_id:, name:, plan_version:)
314
+ # Some parameter documentations has been truncated, see
315
+ # {Orb::Models::SubscriptionLicenseBalanceThresholdReachedWebhookEvent::Properties::AlertConfiguration::Plan}
316
+ # for more details.
317
+ #
318
+ # The plan the alert applies to.
319
+ #
320
+ # @param id [String, nil]
321
+ #
322
+ # @param external_plan_id [String, nil] An optional user-defined ID for this plan resource, used throughout the system a
323
+ #
324
+ # @param name [String, nil]
325
+ #
326
+ # @param plan_version [String]
327
+ end
328
+
329
+ class Threshold < Orb::Internal::Type::BaseModel
330
+ # @!attribute value
331
+ # The value at which an alert will fire. For credit balance alerts, the alert will
332
+ # fire at or below this value. For usage and cost alerts, the alert will fire at
333
+ # or above this value.
334
+ #
335
+ # @return [String]
336
+ required :value, String
337
+
338
+ # @!method initialize(value:)
339
+ # Some parameter documentations has been truncated, see
340
+ # {Orb::Models::SubscriptionLicenseBalanceThresholdReachedWebhookEvent::Properties::AlertConfiguration::Threshold}
341
+ # for more details.
342
+ #
343
+ # Thresholds are used to define the conditions under which an alert will be
344
+ # triggered.
345
+ #
346
+ # @param value [String] The value at which an alert will fire. For credit balance alerts, the alert will
347
+ end
348
+
349
+ # The type of alert. This must be a valid alert type.
350
+ #
351
+ # @see Orb::Models::SubscriptionLicenseBalanceThresholdReachedWebhookEvent::Properties::AlertConfiguration#type
352
+ module Type
353
+ extend Orb::Internal::Type::Enum
354
+
355
+ CREDIT_BALANCE_DEPLETED = :credit_balance_depleted
356
+ CREDIT_BALANCE_DROPPED = :credit_balance_dropped
357
+ CREDIT_BALANCE_RECOVERED = :credit_balance_recovered
358
+ USAGE_EXCEEDED = :usage_exceeded
359
+ COST_EXCEEDED = :cost_exceeded
360
+ SPEND_EXCEEDED = :spend_exceeded
361
+ LICENSE_BALANCE_THRESHOLD_REACHED = :license_balance_threshold_reached
362
+
363
+ # @!method self.values
364
+ # @return [Array<Symbol>]
365
+ end
366
+
367
+ class BalanceAlertStatus < Orb::Internal::Type::BaseModel
368
+ # @!attribute in_alert
369
+ # Whether the alert is currently in-alert or not.
370
+ #
371
+ # @return [Boolean]
372
+ required :in_alert, Orb::Internal::Type::Boolean
373
+
374
+ # @!attribute threshold_value
375
+ # The value of the threshold that defines the alert status.
376
+ #
377
+ # @return [String]
378
+ required :threshold_value, String
379
+
380
+ # @!method initialize(in_alert:, threshold_value:)
381
+ # Alert status is used to determine if an alert is currently in-alert or not.
382
+ #
383
+ # @param in_alert [Boolean] Whether the alert is currently in-alert or not.
384
+ #
385
+ # @param threshold_value [String] The value of the threshold that defines the alert status.
386
+ end
387
+
388
+ # @see Orb::Models::SubscriptionLicenseBalanceThresholdReachedWebhookEvent::Properties::AlertConfiguration#license_type
389
+ class LicenseType < Orb::Internal::Type::BaseModel
390
+ # @!attribute id
391
+ #
392
+ # @return [String]
393
+ required :id, String
394
+
395
+ # @!method initialize(id:)
396
+ # Minified license type for alert serialization.
397
+ #
398
+ # @param id [String]
399
+ end
400
+
401
+ class PriceFilter < Orb::Internal::Type::BaseModel
402
+ # @!attribute field
403
+ # The property of the price to filter on.
404
+ #
405
+ # @return [Symbol, Orb::Models::SubscriptionLicenseBalanceThresholdReachedWebhookEvent::Properties::AlertConfiguration::PriceFilter::Field]
406
+ required :field,
407
+ enum: -> { Orb::SubscriptionLicenseBalanceThresholdReachedWebhookEvent::Properties::AlertConfiguration::PriceFilter::Field }
408
+
409
+ # @!attribute operator
410
+ # Should prices that match the filter be included or excluded.
411
+ #
412
+ # @return [Symbol, Orb::Models::SubscriptionLicenseBalanceThresholdReachedWebhookEvent::Properties::AlertConfiguration::PriceFilter::Operator]
413
+ required :operator,
414
+ enum: -> { Orb::SubscriptionLicenseBalanceThresholdReachedWebhookEvent::Properties::AlertConfiguration::PriceFilter::Operator }
415
+
416
+ # @!attribute values
417
+ # The IDs or values that match this filter.
418
+ #
419
+ # @return [Array<String>]
420
+ required :values, Orb::Internal::Type::ArrayOf[String]
421
+
422
+ # @!method initialize(field:, operator:, values:)
423
+ # @param field [Symbol, Orb::Models::SubscriptionLicenseBalanceThresholdReachedWebhookEvent::Properties::AlertConfiguration::PriceFilter::Field] The property of the price to filter on.
424
+ #
425
+ # @param operator [Symbol, Orb::Models::SubscriptionLicenseBalanceThresholdReachedWebhookEvent::Properties::AlertConfiguration::PriceFilter::Operator] Should prices that match the filter be included or excluded.
426
+ #
427
+ # @param values [Array<String>] The IDs or values that match this filter.
428
+
429
+ # The property of the price to filter on.
430
+ #
431
+ # @see Orb::Models::SubscriptionLicenseBalanceThresholdReachedWebhookEvent::Properties::AlertConfiguration::PriceFilter#field
432
+ module Field
433
+ extend Orb::Internal::Type::Enum
434
+
435
+ PRICE_ID = :price_id
436
+ ITEM_ID = :item_id
437
+ PRICE_TYPE = :price_type
438
+ CURRENCY = :currency
439
+ PRICING_UNIT_ID = :pricing_unit_id
440
+
441
+ # @!method self.values
442
+ # @return [Array<Symbol>]
443
+ end
444
+
445
+ # Should prices that match the filter be included or excluded.
446
+ #
447
+ # @see Orb::Models::SubscriptionLicenseBalanceThresholdReachedWebhookEvent::Properties::AlertConfiguration::PriceFilter#operator
448
+ module Operator
449
+ extend Orb::Internal::Type::Enum
450
+
451
+ INCLUDES = :includes
452
+ EXCLUDES = :excludes
453
+
454
+ # @!method self.values
455
+ # @return [Array<Symbol>]
456
+ end
457
+ end
458
+
459
+ class ThresholdOverride < Orb::Internal::Type::BaseModel
460
+ # @!attribute group_values
461
+ # The values identifying this group, ordered to match group_keys when set and the
462
+ # alert's grouping_keys otherwise.
463
+ #
464
+ # @return [Array<String>]
465
+ required :group_values, Orb::Internal::Type::ArrayOf[String]
466
+
467
+ # @!attribute thresholds
468
+ # The thresholds applied to this group. An empty list means the group is silenced.
469
+ #
470
+ # @return [Array<Orb::Models::SubscriptionLicenseBalanceThresholdReachedWebhookEvent::Properties::AlertConfiguration::ThresholdOverride::Threshold>]
471
+ required :thresholds,
472
+ -> do
473
+ Orb::Internal::Type::ArrayOf[
474
+ Orb::SubscriptionLicenseBalanceThresholdReachedWebhookEvent::Properties::AlertConfiguration::ThresholdOverride::Threshold
475
+ ]
476
+ end
477
+
478
+ # @!attribute group_keys
479
+ # The subset of the alert's grouping_keys this override binds. Null when the
480
+ # override targets one exact group across every grouping key.
481
+ #
482
+ # @return [Array<String>, nil]
483
+ optional :group_keys, Orb::Internal::Type::ArrayOf[String], nil?: true
484
+
485
+ # @!method initialize(group_values:, thresholds:, group_keys: nil)
486
+ # Some parameter documentations has been truncated, see
487
+ # {Orb::Models::SubscriptionLicenseBalanceThresholdReachedWebhookEvent::Properties::AlertConfiguration::ThresholdOverride}
488
+ # for more details.
489
+ #
490
+ # A per-group threshold override on a grouped cost alert.
491
+ #
492
+ # An empty `thresholds` list means the group is silenced (never fires). A
493
+ # non-empty list fully replaces the default thresholds for that group.
494
+ #
495
+ # @param group_values [Array<String>] The values identifying this group, ordered to match group_keys when set and the
496
+ #
497
+ # @param thresholds [Array<Orb::Models::SubscriptionLicenseBalanceThresholdReachedWebhookEvent::Properties::AlertConfiguration::ThresholdOverride::Threshold>] The thresholds applied to this group. An empty list means the group is silenced.
498
+ #
499
+ # @param group_keys [Array<String>, nil] The subset of the alert's grouping_keys this override binds. Null when the overr
500
+
501
+ class Threshold < Orb::Internal::Type::BaseModel
502
+ # @!attribute value
503
+ # The value at which an alert will fire. For credit balance alerts, the alert will
504
+ # fire at or below this value. For usage and cost alerts, the alert will fire at
505
+ # or above this value.
506
+ #
507
+ # @return [String]
508
+ required :value, String
509
+
510
+ # @!method initialize(value:)
511
+ # Some parameter documentations has been truncated, see
512
+ # {Orb::Models::SubscriptionLicenseBalanceThresholdReachedWebhookEvent::Properties::AlertConfiguration::ThresholdOverride::Threshold}
513
+ # for more details.
514
+ #
515
+ # Thresholds are used to define the conditions under which an alert will be
516
+ # triggered.
517
+ #
518
+ # @param value [String] The value at which an alert will fire. For credit balance alerts, the alert will
519
+ end
520
+ end
521
+ end
522
+
523
+ class License < Orb::Internal::Type::BaseModel
524
+ # @!attribute external_license_id
525
+ #
526
+ # @return [String]
527
+ required :external_license_id, String
528
+
529
+ # @!attribute license_type_id
530
+ #
531
+ # @return [String]
532
+ required :license_type_id, String
533
+
534
+ # @!attribute threshold_percentage
535
+ #
536
+ # @return [String]
537
+ required :threshold_percentage, String
538
+
539
+ # @!method initialize(external_license_id:, license_type_id:, threshold_percentage:)
540
+ # @param external_license_id [String]
541
+ # @param license_type_id [String]
542
+ # @param threshold_percentage [String]
543
+ end
544
+ end
545
+
546
+ # @see Orb::Models::SubscriptionLicenseBalanceThresholdReachedWebhookEvent#subscription
547
+ class Subscription < Orb::Internal::Type::BaseModel
548
+ # @!attribute id
549
+ #
550
+ # @return [String]
551
+ required :id, String
552
+
553
+ # @!attribute customer
554
+ #
555
+ # @return [Orb::Models::CustomerMinified]
556
+ required :customer, -> { Orb::CustomerMinified }
557
+
558
+ # @!attribute end_date
559
+ #
560
+ # @return [Time, nil]
561
+ required :end_date, Time, nil?: true
562
+
563
+ # @!attribute plan
564
+ #
565
+ # @return [Orb::Models::SubscriptionLicenseBalanceThresholdReachedWebhookEvent::Subscription::Plan, nil]
566
+ required :plan,
567
+ -> { Orb::SubscriptionLicenseBalanceThresholdReachedWebhookEvent::Subscription::Plan },
568
+ nil?: true
569
+
570
+ # @!attribute start_date
571
+ #
572
+ # @return [Time]
573
+ required :start_date, Time
574
+
575
+ # @!attribute status
576
+ #
577
+ # @return [Symbol, Orb::Models::SubscriptionLicenseBalanceThresholdReachedWebhookEvent::Subscription::Status]
578
+ required :status,
579
+ enum: -> { Orb::SubscriptionLicenseBalanceThresholdReachedWebhookEvent::Subscription::Status }
580
+
581
+ # @!method initialize(id:, customer:, end_date:, plan:, start_date:, status:)
582
+ # A lightweight subscription representation for webhook payloads.
583
+ #
584
+ # This avoids the expensive to_subscription_params() call required for full
585
+ # serialization.
586
+ #
587
+ # @param id [String]
588
+ # @param customer [Orb::Models::CustomerMinified]
589
+ # @param end_date [Time, nil]
590
+ # @param plan [Orb::Models::SubscriptionLicenseBalanceThresholdReachedWebhookEvent::Subscription::Plan, nil]
591
+ # @param start_date [Time]
592
+ # @param status [Symbol, Orb::Models::SubscriptionLicenseBalanceThresholdReachedWebhookEvent::Subscription::Status]
593
+
594
+ # @see Orb::Models::SubscriptionLicenseBalanceThresholdReachedWebhookEvent::Subscription#plan
595
+ class Plan < Orb::Internal::Type::BaseModel
596
+ # @!attribute id
597
+ #
598
+ # @return [String, nil]
599
+ required :id, String, nil?: true
600
+
601
+ # @!attribute external_plan_id
602
+ # An optional user-defined ID for this plan resource, used throughout the system
603
+ # as an alias for this Plan. Use this field to identify a plan by an existing
604
+ # identifier in your system.
605
+ #
606
+ # @return [String, nil]
607
+ required :external_plan_id, String, nil?: true
608
+
609
+ # @!attribute name
610
+ #
611
+ # @return [String, nil]
612
+ required :name, String, nil?: true
613
+
614
+ # @!method initialize(id:, external_plan_id:, name:)
615
+ # Some parameter documentations has been truncated, see
616
+ # {Orb::Models::SubscriptionLicenseBalanceThresholdReachedWebhookEvent::Subscription::Plan}
617
+ # for more details.
618
+ #
619
+ # @param id [String, nil]
620
+ #
621
+ # @param external_plan_id [String, nil] An optional user-defined ID for this plan resource, used throughout the system a
622
+ #
623
+ # @param name [String, nil]
624
+ end
625
+
626
+ # @see Orb::Models::SubscriptionLicenseBalanceThresholdReachedWebhookEvent::Subscription#status
627
+ module Status
628
+ extend Orb::Internal::Type::Enum
629
+
630
+ ACTIVE = :active
631
+ ENDED = :ended
632
+ UPCOMING = :upcoming
633
+
634
+ # @!method self.values
635
+ # @return [Array<Symbol>]
636
+ end
637
+ end
638
+
639
+ # The event this payload describes.
640
+ #
641
+ # @see Orb::Models::SubscriptionLicenseBalanceThresholdReachedWebhookEvent#type
642
+ module Type
643
+ extend Orb::Internal::Type::Enum
644
+
645
+ SUBSCRIPTION_LICENSE_BALANCE_THRESHOLD_REACHED = :"subscription.license_balance_threshold_reached"
646
+
647
+ # @!method self.values
648
+ # @return [Array<Symbol>]
649
+ end
650
+ end
651
+ end
652
+ end