orb-apiamtic-sdk 0.0.1

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 (659) hide show
  1. checksums.yaml +7 -0
  2. data/LICENSE +28 -0
  3. data/README.md +177 -0
  4. data/bin/console +15 -0
  5. data/lib/api_reference/api_helper.rb +10 -0
  6. data/lib/api_reference/apis/alert_api.rb +497 -0
  7. data/lib/api_reference/apis/availability_api.rb +51 -0
  8. data/lib/api_reference/apis/base_api.rb +65 -0
  9. data/lib/api_reference/apis/coupon_api.rb +250 -0
  10. data/lib/api_reference/apis/credit_api.rb +1269 -0
  11. data/lib/api_reference/apis/credit_note_api.rb +181 -0
  12. data/lib/api_reference/apis/customer_api.rb +1058 -0
  13. data/lib/api_reference/apis/dimensional_price_group_api.rb +289 -0
  14. data/lib/api_reference/apis/event_api.rb +776 -0
  15. data/lib/api_reference/apis/invoice_api.rb +933 -0
  16. data/lib/api_reference/apis/item_api.rb +224 -0
  17. data/lib/api_reference/apis/license_api.rb +452 -0
  18. data/lib/api_reference/apis/license_type_api.rb +147 -0
  19. data/lib/api_reference/apis/metric_api.rb +211 -0
  20. data/lib/api_reference/apis/plan_api.rb +763 -0
  21. data/lib/api_reference/apis/price_api.rb +538 -0
  22. data/lib/api_reference/apis/price_interval_api.rb +134 -0
  23. data/lib/api_reference/apis/subscription_api.rb +1575 -0
  24. data/lib/api_reference/apis/subscription_change_api.rb +213 -0
  25. data/lib/api_reference/client.rb +175 -0
  26. data/lib/api_reference/configuration.rb +166 -0
  27. data/lib/api_reference/exceptions/api_exception.rb +21 -0
  28. data/lib/api_reference/exceptions/authorization_error_exception.rb +60 -0
  29. data/lib/api_reference/exceptions/idempotency_request_mismatch_exception.rb +60 -0
  30. data/lib/api_reference/exceptions/server_error_exception.rb +61 -0
  31. data/lib/api_reference/exceptions/too_many_requests_exception.rb +60 -0
  32. data/lib/api_reference/http/api_response.rb +19 -0
  33. data/lib/api_reference/http/auth/oauth_2.rb +53 -0
  34. data/lib/api_reference/http/http_call_back.rb +10 -0
  35. data/lib/api_reference/http/http_method_enum.rb +10 -0
  36. data/lib/api_reference/http/http_request.rb +10 -0
  37. data/lib/api_reference/http/http_response.rb +10 -0
  38. data/lib/api_reference/http/proxy_settings.rb +22 -0
  39. data/lib/api_reference/logging/configuration/api_logging_configuration.rb +186 -0
  40. data/lib/api_reference/logging/sdk_logger.rb +17 -0
  41. data/lib/api_reference/models/accounting_provider.rb +108 -0
  42. data/lib/api_reference/models/accounting_provider_config.rb +84 -0
  43. data/lib/api_reference/models/accounting_sync_configuration.rb +117 -0
  44. data/lib/api_reference/models/action.rb +68 -0
  45. data/lib/api_reference/models/add_adjustment_interval_params.rb +148 -0
  46. data/lib/api_reference/models/add_amendment_credit_ledger_entry_request_params.rb +144 -0
  47. data/lib/api_reference/models/add_credit_top_up_request_params.rb +149 -0
  48. data/lib/api_reference/models/add_decrement_credit_ledger_entry_request_params.rb +145 -0
  49. data/lib/api_reference/models/add_edit_price_interval_params.rb +161 -0
  50. data/lib/api_reference/models/add_expiration_change_credit_ledger_entry_request_params.rb +193 -0
  51. data/lib/api_reference/models/add_increment_credit_ledger_entry_request_params.rb +237 -0
  52. data/lib/api_reference/models/add_plan_adjustment_params.rb +90 -0
  53. data/lib/api_reference/models/add_plan_price_params.rb +103 -0
  54. data/lib/api_reference/models/add_price_interval_params.rb +297 -0
  55. data/lib/api_reference/models/add_subscription_adjustment_params.rb +146 -0
  56. data/lib/api_reference/models/add_subscription_price_params.rb +234 -0
  57. data/lib/api_reference/models/add_void_credit_ledger_entry_request_params.rb +169 -0
  58. data/lib/api_reference/models/address.rb +162 -0
  59. data/lib/api_reference/models/address_input.rb +131 -0
  60. data/lib/api_reference/models/adjustment_interval.rb +163 -0
  61. data/lib/api_reference/models/affected_block.rb +155 -0
  62. data/lib/api_reference/models/aggregated_cost.rb +131 -0
  63. data/lib/api_reference/models/alert.rb +339 -0
  64. data/lib/api_reference/models/alerts.rb +92 -0
  65. data/lib/api_reference/models/allocation.rb +157 -0
  66. data/lib/api_reference/models/amend_event_result.rb +73 -0
  67. data/lib/api_reference/models/amended_event.rb +115 -0
  68. data/lib/api_reference/models/amendment_ledger_entry.rb +301 -0
  69. data/lib/api_reference/models/amount_discount.rb +150 -0
  70. data/lib/api_reference/models/amount_discount_creation_params.rb +81 -0
  71. data/lib/api_reference/models/amount_discount_interval.rb +187 -0
  72. data/lib/api_reference/models/api_pagination_params.rb +74 -0
  73. data/lib/api_reference/models/apply_params.rb +136 -0
  74. data/lib/api_reference/models/auto_collection.rb +157 -0
  75. data/lib/api_reference/models/backfill.rb +214 -0
  76. data/lib/api_reference/models/backfill_status.rb +44 -0
  77. data/lib/api_reference/models/backfills.rb +92 -0
  78. data/lib/api_reference/models/balance_alert_status.rb +105 -0
  79. data/lib/api_reference/models/base_model.rb +110 -0
  80. data/lib/api_reference/models/billable_metric.rb +155 -0
  81. data/lib/api_reference/models/billable_metric_minified.rb +86 -0
  82. data/lib/api_reference/models/billable_metric_simple.rb +104 -0
  83. data/lib/api_reference/models/billable_metric_tiny.rb +86 -0
  84. data/lib/api_reference/models/billable_metrics.rb +92 -0
  85. data/lib/api_reference/models/billing_cycle_alignment.rb +40 -0
  86. data/lib/api_reference/models/billing_cycle_anchor_configuration.rb +117 -0
  87. data/lib/api_reference/models/billing_cycle_configuration.rb +104 -0
  88. data/lib/api_reference/models/billing_mode.rb +36 -0
  89. data/lib/api_reference/models/block_price_filter.rb +114 -0
  90. data/lib/api_reference/models/bulk_config.rb +87 -0
  91. data/lib/api_reference/models/bulk_price.rb +584 -0
  92. data/lib/api_reference/models/bulk_tier.rb +87 -0
  93. data/lib/api_reference/models/bulk_tier_with_proration.rb +88 -0
  94. data/lib/api_reference/models/bulk_with_filters_config.rb +98 -0
  95. data/lib/api_reference/models/bulk_with_filters_config1.rb +116 -0
  96. data/lib/api_reference/models/bulk_with_filters_price.rb +587 -0
  97. data/lib/api_reference/models/bulk_with_filters_tier.rb +88 -0
  98. data/lib/api_reference/models/bulk_with_proration_config.rb +69 -0
  99. data/lib/api_reference/models/bulk_with_proration_config1.rb +87 -0
  100. data/lib/api_reference/models/bulk_with_proration_price.rb +587 -0
  101. data/lib/api_reference/models/cadence.rb +52 -0
  102. data/lib/api_reference/models/cadence104.rb +52 -0
  103. data/lib/api_reference/models/cadence34.rb +48 -0
  104. data/lib/api_reference/models/cancel_option.rb +40 -0
  105. data/lib/api_reference/models/cancel_subscription_params.rb +102 -0
  106. data/lib/api_reference/models/change_option.rb +42 -0
  107. data/lib/api_reference/models/change_option1.rb +40 -0
  108. data/lib/api_reference/models/changed_subscription_resources.rb +185 -0
  109. data/lib/api_reference/models/constraint_violation_error.rb +101 -0
  110. data/lib/api_reference/models/conversion_rate_tier.rb +82 -0
  111. data/lib/api_reference/models/conversion_rate_tiered_config.rb +69 -0
  112. data/lib/api_reference/models/conversion_rate_unit_config.rb +60 -0
  113. data/lib/api_reference/models/costs_request_params.rb +118 -0
  114. data/lib/api_reference/models/country.rb +492 -0
  115. data/lib/api_reference/models/coupon.rb +195 -0
  116. data/lib/api_reference/models/coupon_query_params.rb +99 -0
  117. data/lib/api_reference/models/coupon_redemption.rb +132 -0
  118. data/lib/api_reference/models/coupons.rb +92 -0
  119. data/lib/api_reference/models/create_credit_note_params.rb +120 -0
  120. data/lib/api_reference/models/create_customer_alert_request_params.rb +91 -0
  121. data/lib/api_reference/models/create_invoice_line_item_params.rb +128 -0
  122. data/lib/api_reference/models/create_one_off_invoice_params.rb +255 -0
  123. data/lib/api_reference/models/create_subscription_alert_request_params.rb +163 -0
  124. data/lib/api_reference/models/created_invoice.rb +851 -0
  125. data/lib/api_reference/models/credit_block.rb +231 -0
  126. data/lib/api_reference/models/credit_block_allocation.rb +140 -0
  127. data/lib/api_reference/models/credit_block_expiry_ledger_entry.rb +301 -0
  128. data/lib/api_reference/models/credit_block_invoices_response.rb +91 -0
  129. data/lib/api_reference/models/credit_block_source.rb +43 -0
  130. data/lib/api_reference/models/credit_ledger_entries.rb +109 -0
  131. data/lib/api_reference/models/credit_note.rb +338 -0
  132. data/lib/api_reference/models/credit_note_discount.rb +152 -0
  133. data/lib/api_reference/models/credit_note_discount_applies_to_price.rb +104 -0
  134. data/lib/api_reference/models/credit_note_line_item.rb +244 -0
  135. data/lib/api_reference/models/credit_note_line_item_discount.rb +173 -0
  136. data/lib/api_reference/models/credit_note_line_item_params.rb +116 -0
  137. data/lib/api_reference/models/credit_note_summary.rb +181 -0
  138. data/lib/api_reference/models/credit_note_tiny.rb +86 -0
  139. data/lib/api_reference/models/credit_notes.rb +92 -0
  140. data/lib/api_reference/models/cumulative_grouped_allocation_config.rb +94 -0
  141. data/lib/api_reference/models/cumulative_grouped_allocation_config1.rb +120 -0
  142. data/lib/api_reference/models/cumulative_grouped_allocation_price.rb +588 -0
  143. data/lib/api_reference/models/cumulative_grouped_bulk_config.rb +77 -0
  144. data/lib/api_reference/models/cumulative_grouped_bulk_config1.rb +103 -0
  145. data/lib/api_reference/models/cumulative_grouped_bulk_dimension_value.rb +105 -0
  146. data/lib/api_reference/models/cumulative_grouped_bulk_price.rb +588 -0
  147. data/lib/api_reference/models/custom_expiration.rb +104 -0
  148. data/lib/api_reference/models/customer.rb +511 -0
  149. data/lib/api_reference/models/customer_balance_transaction.rb +226 -0
  150. data/lib/api_reference/models/customer_balance_transactions.rb +92 -0
  151. data/lib/api_reference/models/customer_costs.rb +81 -0
  152. data/lib/api_reference/models/customer_credit_balance.rb +231 -0
  153. data/lib/api_reference/models/customer_credit_balances.rb +92 -0
  154. data/lib/api_reference/models/customer_hierarchy.rb +93 -0
  155. data/lib/api_reference/models/customer_hierarchy2.rb +121 -0
  156. data/lib/api_reference/models/customer_hierarchy_config.rb +92 -0
  157. data/lib/api_reference/models/customer_minified.rb +107 -0
  158. data/lib/api_reference/models/customer_tax_id.rb +224 -0
  159. data/lib/api_reference/models/customers.rb +92 -0
  160. data/lib/api_reference/models/daily_credit_allowance_config.rb +119 -0
  161. data/lib/api_reference/models/daily_credit_allowance_config1.rb +150 -0
  162. data/lib/api_reference/models/daily_credit_allowance_matrix_value.rb +93 -0
  163. data/lib/api_reference/models/daily_credit_allowance_price.rb +588 -0
  164. data/lib/api_reference/models/date_type.rb +36 -0
  165. data/lib/api_reference/models/deactivate_license.rb +65 -0
  166. data/lib/api_reference/models/debug.rb +82 -0
  167. data/lib/api_reference/models/decrement_ledger_entry.rb +342 -0
  168. data/lib/api_reference/models/deprecated_event_result.rb +74 -0
  169. data/lib/api_reference/models/dimensional_price_configuration.rb +108 -0
  170. data/lib/api_reference/models/dimensional_price_group.rb +134 -0
  171. data/lib/api_reference/models/dimensional_price_groups.rb +92 -0
  172. data/lib/api_reference/models/discount_override.rb +116 -0
  173. data/lib/api_reference/models/discount_type.rb +40 -0
  174. data/lib/api_reference/models/discount_type1.rb +36 -0
  175. data/lib/api_reference/models/duplicate_resource_creation_error.rb +101 -0
  176. data/lib/api_reference/models/duration_unit.rb +36 -0
  177. data/lib/api_reference/models/duration_unit1.rb +36 -0
  178. data/lib/api_reference/models/duration_unit3.rb +48 -0
  179. data/lib/api_reference/models/edit_adjustment_interval_params.rb +130 -0
  180. data/lib/api_reference/models/edit_customer.rb +351 -0
  181. data/lib/api_reference/models/edit_dimensional_price_group.rb +86 -0
  182. data/lib/api_reference/models/edit_plan.rb +91 -0
  183. data/lib/api_reference/models/edit_price_interval_params.rb +237 -0
  184. data/lib/api_reference/models/effective_time.rb +26 -0
  185. data/lib/api_reference/models/end_of_term.rb +26 -0
  186. data/lib/api_reference/models/entry_status.rb +36 -0
  187. data/lib/api_reference/models/entry_type.rb +56 -0
  188. data/lib/api_reference/models/evaluate_multiple_price_resource.rb +81 -0
  189. data/lib/api_reference/models/evaluate_multiple_prices_body.rb +129 -0
  190. data/lib/api_reference/models/evaluate_multiple_prices_with_preview_events_body.rb +148 -0
  191. data/lib/api_reference/models/evaluate_price_body.rb +153 -0
  192. data/lib/api_reference/models/evaluate_price_group.rb +120 -0
  193. data/lib/api_reference/models/evaluate_price_resource.rb +81 -0
  194. data/lib/api_reference/models/evaluate_price_resource_for_multiple_price.rb +130 -0
  195. data/lib/api_reference/models/event.rb +149 -0
  196. data/lib/api_reference/models/event_output_config.rb +90 -0
  197. data/lib/api_reference/models/event_output_config1.rb +104 -0
  198. data/lib/api_reference/models/event_output_price.rb +585 -0
  199. data/lib/api_reference/models/event_search_criteria.rb +106 -0
  200. data/lib/api_reference/models/event_volume.rb +107 -0
  201. data/lib/api_reference/models/event_volume_params.rb +115 -0
  202. data/lib/api_reference/models/event_volumes.rb +81 -0
  203. data/lib/api_reference/models/events.rb +81 -0
  204. data/lib/api_reference/models/expiration_change_ledger_entry.rb +324 -0
  205. data/lib/api_reference/models/expires_after_unit.rb +36 -0
  206. data/lib/api_reference/models/external_connection_name.rb +44 -0
  207. data/lib/api_reference/models/external_connection_name1.rb +48 -0
  208. data/lib/api_reference/models/external_marketplace.rb +40 -0
  209. data/lib/api_reference/models/feature_not_available_error.rb +101 -0
  210. data/lib/api_reference/models/fetch_customer_credit_blocks_query_params.rb +181 -0
  211. data/lib/api_reference/models/fetch_customer_credit_ledger_query_params.rb +198 -0
  212. data/lib/api_reference/models/fetch_license_by_external_id.rb +72 -0
  213. data/lib/api_reference/models/fetch_subscription_schedule_query_params.rb +157 -0
  214. data/lib/api_reference/models/fetch_upcoming_invoice_params.rb +61 -0
  215. data/lib/api_reference/models/field.rb +48 -0
  216. data/lib/api_reference/models/filter_rule.rb +92 -0
  217. data/lib/api_reference/models/fixed_fee_quantity_change.rb +116 -0
  218. data/lib/api_reference/models/fixed_fee_quantity_schedule_entry.rb +145 -0
  219. data/lib/api_reference/models/fixed_fee_quantity_transition.rb +124 -0
  220. data/lib/api_reference/models/granularity.rb +26 -0
  221. data/lib/api_reference/models/grouped_allocation_config.rb +79 -0
  222. data/lib/api_reference/models/grouped_allocation_config1.rb +105 -0
  223. data/lib/api_reference/models/grouped_allocation_price.rb +587 -0
  224. data/lib/api_reference/models/grouped_subscription_usage.rb +114 -0
  225. data/lib/api_reference/models/grouped_subscription_usage_record.rb +149 -0
  226. data/lib/api_reference/models/grouped_tiered_config.rb +78 -0
  227. data/lib/api_reference/models/grouped_tiered_config1.rb +104 -0
  228. data/lib/api_reference/models/grouped_tiered_package_price.rb +588 -0
  229. data/lib/api_reference/models/grouped_tiered_package_pricing_config.rb +89 -0
  230. data/lib/api_reference/models/grouped_tiered_package_pricing_config1.rb +119 -0
  231. data/lib/api_reference/models/grouped_tiered_package_tier_item.rb +92 -0
  232. data/lib/api_reference/models/grouped_tiered_price.rb +586 -0
  233. data/lib/api_reference/models/grouped_tiered_tier.rb +92 -0
  234. data/lib/api_reference/models/grouped_with_metered_minimum_config.rb +127 -0
  235. data/lib/api_reference/models/grouped_with_metered_minimum_config1.rb +173 -0
  236. data/lib/api_reference/models/grouped_with_metered_minimum_price.rb +588 -0
  237. data/lib/api_reference/models/grouped_with_metered_minimum_scaling_factor_item.rb +92 -0
  238. data/lib/api_reference/models/grouped_with_metered_minimum_unit_amount_item.rb +91 -0
  239. data/lib/api_reference/models/grouped_with_min_max_thresholds_config.rb +90 -0
  240. data/lib/api_reference/models/grouped_with_min_max_thresholds_config1.rb +120 -0
  241. data/lib/api_reference/models/grouped_with_min_max_thresholds_price.rb +588 -0
  242. data/lib/api_reference/models/grouped_with_prorated_minimum_config.rb +78 -0
  243. data/lib/api_reference/models/grouped_with_prorated_minimum_config1.rb +104 -0
  244. data/lib/api_reference/models/grouped_with_prorated_minimum_price.rb +588 -0
  245. data/lib/api_reference/models/increment_credit_ledger_entry_invoice_settings.rb +197 -0
  246. data/lib/api_reference/models/increment_ledger_entry.rb +322 -0
  247. data/lib/api_reference/models/ingest_event.rb +127 -0
  248. data/lib/api_reference/models/ingest_event_idempotency_key_only.rb +75 -0
  249. data/lib/api_reference/models/ingest_query_params.rb +75 -0
  250. data/lib/api_reference/models/ingest_request_body.rb +69 -0
  251. data/lib/api_reference/models/ingestion_response.rb +97 -0
  252. data/lib/api_reference/models/invoice.rb +843 -0
  253. data/lib/api_reference/models/invoice_line_item.rb +359 -0
  254. data/lib/api_reference/models/invoice_line_item_params.rb +157 -0
  255. data/lib/api_reference/models/invoice_minified.rb +112 -0
  256. data/lib/api_reference/models/invoice_source.rb +40 -0
  257. data/lib/api_reference/models/invoice_summary.rb +525 -0
  258. data/lib/api_reference/models/invoice_summarys.rb +92 -0
  259. data/lib/api_reference/models/invoice_tiny.rb +86 -0
  260. data/lib/api_reference/models/invoices.rb +92 -0
  261. data/lib/api_reference/models/issue_invoice_request_params.rb +66 -0
  262. data/lib/api_reference/models/item.rb +154 -0
  263. data/lib/api_reference/models/item_external_connection.rb +110 -0
  264. data/lib/api_reference/models/item_slim.rb +105 -0
  265. data/lib/api_reference/models/items.rb +92 -0
  266. data/lib/api_reference/models/license_api_resource.rb +147 -0
  267. data/lib/api_reference/models/license_api_resources.rb +92 -0
  268. data/lib/api_reference/models/license_type.rb +119 -0
  269. data/lib/api_reference/models/license_type_minified.rb +86 -0
  270. data/lib/api_reference/models/license_types.rb +92 -0
  271. data/lib/api_reference/models/license_usage.rb +203 -0
  272. data/lib/api_reference/models/license_usage_by_external_id_query_params.rb +133 -0
  273. data/lib/api_reference/models/license_usage_by_type_query_params.rb +132 -0
  274. data/lib/api_reference/models/license_usage_query_params.rb +110 -0
  275. data/lib/api_reference/models/license_usages.rb +92 -0
  276. data/lib/api_reference/models/list_alerts_query_params.rb +189 -0
  277. data/lib/api_reference/models/list_credit_notes_params.rb +157 -0
  278. data/lib/api_reference/models/list_customer_balance_transactions_query_params.rb +158 -0
  279. data/lib/api_reference/models/list_customers_query_params.rb +157 -0
  280. data/lib/api_reference/models/list_invoices_params.rb +345 -0
  281. data/lib/api_reference/models/list_licenses_params.rb +125 -0
  282. data/lib/api_reference/models/list_metrics_query_params.rb +157 -0
  283. data/lib/api_reference/models/list_plans_query_params.rb +163 -0
  284. data/lib/api_reference/models/list_subscription_changes_query_params.rb +112 -0
  285. data/lib/api_reference/models/list_subscriptions_query_params.rb +258 -0
  286. data/lib/api_reference/models/map_item_request_params.rb +103 -0
  287. data/lib/api_reference/models/mark_as_paid_request_params.rb +85 -0
  288. data/lib/api_reference/models/matrix_cell.rb +108 -0
  289. data/lib/api_reference/models/matrix_config.rb +119 -0
  290. data/lib/api_reference/models/matrix_price.rb +584 -0
  291. data/lib/api_reference/models/matrix_sub_line_item.rb +173 -0
  292. data/lib/api_reference/models/matrix_value.rb +92 -0
  293. data/lib/api_reference/models/matrix_with_allocation_config.rb +99 -0
  294. data/lib/api_reference/models/matrix_with_allocation_config1.rb +133 -0
  295. data/lib/api_reference/models/matrix_with_allocation_price.rb +588 -0
  296. data/lib/api_reference/models/matrix_with_allocation_value_item.rb +94 -0
  297. data/lib/api_reference/models/matrix_with_display_name_config.rb +77 -0
  298. data/lib/api_reference/models/matrix_with_display_name_config1.rb +103 -0
  299. data/lib/api_reference/models/matrix_with_display_name_price.rb +588 -0
  300. data/lib/api_reference/models/matrix_with_display_name_unit_amount_item.rb +105 -0
  301. data/lib/api_reference/models/matrix_with_threshold_discounts_config.rb +130 -0
  302. data/lib/api_reference/models/matrix_with_threshold_discounts_config1.rb +157 -0
  303. data/lib/api_reference/models/matrix_with_threshold_discounts_price.rb +588 -0
  304. data/lib/api_reference/models/max_group_tiered_package_config.rb +90 -0
  305. data/lib/api_reference/models/max_group_tiered_package_config1.rb +120 -0
  306. data/lib/api_reference/models/max_group_tiered_package_price.rb +588 -0
  307. data/lib/api_reference/models/max_group_tiered_tier_item.rb +92 -0
  308. data/lib/api_reference/models/maximum.rb +135 -0
  309. data/lib/api_reference/models/maximum_interval.rb +177 -0
  310. data/lib/api_reference/models/metered_allowance_config.rb +130 -0
  311. data/lib/api_reference/models/metered_allowance_config1.rb +152 -0
  312. data/lib/api_reference/models/metered_allowance_price.rb +587 -0
  313. data/lib/api_reference/models/metric_group.rb +105 -0
  314. data/lib/api_reference/models/minimum.rb +135 -0
  315. data/lib/api_reference/models/minimum_composite_config.rb +73 -0
  316. data/lib/api_reference/models/minimum_composite_config1.rb +87 -0
  317. data/lib/api_reference/models/minimum_composite_price.rb +587 -0
  318. data/lib/api_reference/models/minimum_interval.rb +177 -0
  319. data/lib/api_reference/models/monetary_amount_discount_adjustment.rb +219 -0
  320. data/lib/api_reference/models/monetary_maximum_adjustment.rb +218 -0
  321. data/lib/api_reference/models/monetary_minimum_adjustment.rb +231 -0
  322. data/lib/api_reference/models/monetary_percentage_discount_adjustment.rb +219 -0
  323. data/lib/api_reference/models/monetary_tiered_percentage_discount_adjustment.rb +230 -0
  324. data/lib/api_reference/models/monetary_usage_discount_adjustment.rb +218 -0
  325. data/lib/api_reference/models/mutated_subscription.rb +683 -0
  326. data/lib/api_reference/models/new_accounting_sync_configuration.rb +98 -0
  327. data/lib/api_reference/models/new_allocation_price.rb +221 -0
  328. data/lib/api_reference/models/new_amount_discount.rb +202 -0
  329. data/lib/api_reference/models/new_anrok_configuration.rb +100 -0
  330. data/lib/api_reference/models/new_avalara_tax_configuration.rb +114 -0
  331. data/lib/api_reference/models/new_backfill.rb +165 -0
  332. data/lib/api_reference/models/new_billable_metric.rb +101 -0
  333. data/lib/api_reference/models/new_billing_cycle_configuration.rb +104 -0
  334. data/lib/api_reference/models/new_coupon.rb +123 -0
  335. data/lib/api_reference/models/new_coupon_amount_discount.rb +103 -0
  336. data/lib/api_reference/models/new_coupon_percentage_discount.rb +103 -0
  337. data/lib/api_reference/models/new_customer.rb +333 -0
  338. data/lib/api_reference/models/new_customer_balance_transaction.rb +81 -0
  339. data/lib/api_reference/models/new_dimensional_price_configuration.rb +126 -0
  340. data/lib/api_reference/models/new_dimensional_price_group.rb +115 -0
  341. data/lib/api_reference/models/new_floating_bulk_price.rb +333 -0
  342. data/lib/api_reference/models/new_floating_bulk_with_filters_price.rb +336 -0
  343. data/lib/api_reference/models/new_floating_bulk_with_proration_price.rb +336 -0
  344. data/lib/api_reference/models/new_floating_cumulative_grouped_allocation_price.rb +337 -0
  345. data/lib/api_reference/models/new_floating_cumulative_grouped_bulk_price.rb +337 -0
  346. data/lib/api_reference/models/new_floating_daily_credit_allowance_price.rb +337 -0
  347. data/lib/api_reference/models/new_floating_event_output_price.rb +334 -0
  348. data/lib/api_reference/models/new_floating_grouped_allocation_price.rb +336 -0
  349. data/lib/api_reference/models/new_floating_grouped_tiered_package_price.rb +337 -0
  350. data/lib/api_reference/models/new_floating_grouped_tiered_price.rb +335 -0
  351. data/lib/api_reference/models/new_floating_grouped_with_metered_minimum_price.rb +337 -0
  352. data/lib/api_reference/models/new_floating_grouped_with_min_max_thresholds_price.rb +337 -0
  353. data/lib/api_reference/models/new_floating_grouped_with_prorated_minimum_price.rb +337 -0
  354. data/lib/api_reference/models/new_floating_matrix_price.rb +333 -0
  355. data/lib/api_reference/models/new_floating_matrix_with_allocation_price.rb +337 -0
  356. data/lib/api_reference/models/new_floating_matrix_with_display_name_price.rb +337 -0
  357. data/lib/api_reference/models/new_floating_matrix_with_threshold_discounts_price.rb +337 -0
  358. data/lib/api_reference/models/new_floating_max_group_tiered_package_price.rb +337 -0
  359. data/lib/api_reference/models/new_floating_metered_allowance_price.rb +336 -0
  360. data/lib/api_reference/models/new_floating_minimum_composite_price.rb +336 -0
  361. data/lib/api_reference/models/new_floating_package_price.rb +333 -0
  362. data/lib/api_reference/models/new_floating_package_with_allocation_price.rb +337 -0
  363. data/lib/api_reference/models/new_floating_percent_composite_price.rb +334 -0
  364. data/lib/api_reference/models/new_floating_scalable_matrix_with_tiered_pricing_price.rb +338 -0
  365. data/lib/api_reference/models/new_floating_scalable_matrix_with_unit_pricing_price.rb +338 -0
  366. data/lib/api_reference/models/new_floating_threshold_total_amount_price.rb +337 -0
  367. data/lib/api_reference/models/new_floating_tiered_package_price.rb +336 -0
  368. data/lib/api_reference/models/new_floating_tiered_package_with_minimum_price.rb +337 -0
  369. data/lib/api_reference/models/new_floating_tiered_price.rb +333 -0
  370. data/lib/api_reference/models/new_floating_tiered_with_minimum_price.rb +336 -0
  371. data/lib/api_reference/models/new_floating_tiered_with_proration_price.rb +336 -0
  372. data/lib/api_reference/models/new_floating_unit_price.rb +333 -0
  373. data/lib/api_reference/models/new_floating_unit_with_percent_price.rb +336 -0
  374. data/lib/api_reference/models/new_floating_unit_with_proration_price.rb +336 -0
  375. data/lib/api_reference/models/new_item.rb +74 -0
  376. data/lib/api_reference/models/new_license.rb +108 -0
  377. data/lib/api_reference/models/new_license_allocation.rb +97 -0
  378. data/lib/api_reference/models/new_license_allocation_unit_price.rb +330 -0
  379. data/lib/api_reference/models/new_license_type.rb +69 -0
  380. data/lib/api_reference/models/new_license_type_configuration.rb +78 -0
  381. data/lib/api_reference/models/new_maximum.rb +202 -0
  382. data/lib/api_reference/models/new_minimum.rb +215 -0
  383. data/lib/api_reference/models/new_numeral_configuration.rb +100 -0
  384. data/lib/api_reference/models/new_percentage_discount.rb +202 -0
  385. data/lib/api_reference/models/new_plan.rb +210 -0
  386. data/lib/api_reference/models/new_plan_bulk_price.rb +310 -0
  387. data/lib/api_reference/models/new_plan_bulk_with_filters_price.rb +313 -0
  388. data/lib/api_reference/models/new_plan_bulk_with_proration_price.rb +313 -0
  389. data/lib/api_reference/models/new_plan_cumulative_grouped_allocation_price.rb +314 -0
  390. data/lib/api_reference/models/new_plan_cumulative_grouped_bulk_price.rb +314 -0
  391. data/lib/api_reference/models/new_plan_daily_credit_allowance_price.rb +314 -0
  392. data/lib/api_reference/models/new_plan_event_output_price.rb +311 -0
  393. data/lib/api_reference/models/new_plan_grouped_allocation_price.rb +313 -0
  394. data/lib/api_reference/models/new_plan_grouped_tiered_package_price.rb +314 -0
  395. data/lib/api_reference/models/new_plan_grouped_tiered_price.rb +312 -0
  396. data/lib/api_reference/models/new_plan_grouped_with_metered_minimum_price.rb +314 -0
  397. data/lib/api_reference/models/new_plan_grouped_with_min_max_thresholds_price.rb +314 -0
  398. data/lib/api_reference/models/new_plan_grouped_with_prorated_minimum_price.rb +314 -0
  399. data/lib/api_reference/models/new_plan_matrix_price.rb +310 -0
  400. data/lib/api_reference/models/new_plan_matrix_with_allocation_price.rb +314 -0
  401. data/lib/api_reference/models/new_plan_matrix_with_display_name_price.rb +314 -0
  402. data/lib/api_reference/models/new_plan_matrix_with_threshold_discounts_price.rb +314 -0
  403. data/lib/api_reference/models/new_plan_max_group_tiered_package_price.rb +314 -0
  404. data/lib/api_reference/models/new_plan_metered_allowance_price.rb +313 -0
  405. data/lib/api_reference/models/new_plan_minimum_composite_price.rb +313 -0
  406. data/lib/api_reference/models/new_plan_package_price.rb +310 -0
  407. data/lib/api_reference/models/new_plan_package_with_allocation_price.rb +314 -0
  408. data/lib/api_reference/models/new_plan_percent_composite_price.rb +311 -0
  409. data/lib/api_reference/models/new_plan_phase.rb +104 -0
  410. data/lib/api_reference/models/new_plan_scalable_matrix_with_tiered_pricing_price.rb +315 -0
  411. data/lib/api_reference/models/new_plan_scalable_matrix_with_unit_pricing_price.rb +315 -0
  412. data/lib/api_reference/models/new_plan_threshold_total_amount_price.rb +314 -0
  413. data/lib/api_reference/models/new_plan_tiered_package_price.rb +313 -0
  414. data/lib/api_reference/models/new_plan_tiered_package_with_minimum_price.rb +314 -0
  415. data/lib/api_reference/models/new_plan_tiered_price.rb +310 -0
  416. data/lib/api_reference/models/new_plan_tiered_with_minimum_price.rb +313 -0
  417. data/lib/api_reference/models/new_plan_tiered_with_proration_price.rb +313 -0
  418. data/lib/api_reference/models/new_plan_unit_price.rb +310 -0
  419. data/lib/api_reference/models/new_plan_unit_with_percent_price.rb +313 -0
  420. data/lib/api_reference/models/new_plan_unit_with_proration_price.rb +313 -0
  421. data/lib/api_reference/models/new_plan_version.rb +197 -0
  422. data/lib/api_reference/models/new_portal_session.rb +78 -0
  423. data/lib/api_reference/models/new_reporting_configuration.rb +73 -0
  424. data/lib/api_reference/models/new_sphere_configuration.rb +100 -0
  425. data/lib/api_reference/models/new_stripe_tax_configuration.rb +100 -0
  426. data/lib/api_reference/models/new_subscription.rb +603 -0
  427. data/lib/api_reference/models/new_subscription_bulk_price.rb +310 -0
  428. data/lib/api_reference/models/new_subscription_bulk_with_filters_price.rb +313 -0
  429. data/lib/api_reference/models/new_subscription_bulk_with_proration_price.rb +313 -0
  430. data/lib/api_reference/models/new_subscription_cumulative_grouped_allocation_price.rb +314 -0
  431. data/lib/api_reference/models/new_subscription_cumulative_grouped_bulk_price.rb +314 -0
  432. data/lib/api_reference/models/new_subscription_daily_credit_allowance_price.rb +314 -0
  433. data/lib/api_reference/models/new_subscription_event_output_price.rb +311 -0
  434. data/lib/api_reference/models/new_subscription_grouped_allocation_price.rb +313 -0
  435. data/lib/api_reference/models/new_subscription_grouped_tiered_package_price.rb +314 -0
  436. data/lib/api_reference/models/new_subscription_grouped_tiered_price.rb +312 -0
  437. data/lib/api_reference/models/new_subscription_grouped_with_metered_minimum_price.rb +314 -0
  438. data/lib/api_reference/models/new_subscription_grouped_with_min_max_thresholds_price.rb +314 -0
  439. data/lib/api_reference/models/new_subscription_grouped_with_prorated_minimum_price.rb +314 -0
  440. data/lib/api_reference/models/new_subscription_matrix_price.rb +310 -0
  441. data/lib/api_reference/models/new_subscription_matrix_with_allocation_price.rb +314 -0
  442. data/lib/api_reference/models/new_subscription_matrix_with_display_name_price.rb +314 -0
  443. data/lib/api_reference/models/new_subscription_matrix_with_threshold_discounts_price.rb +314 -0
  444. data/lib/api_reference/models/new_subscription_max_group_tiered_package_price.rb +314 -0
  445. data/lib/api_reference/models/new_subscription_metered_allowance_price.rb +313 -0
  446. data/lib/api_reference/models/new_subscription_minimum_composite_price.rb +313 -0
  447. data/lib/api_reference/models/new_subscription_package_price.rb +310 -0
  448. data/lib/api_reference/models/new_subscription_package_with_allocation_price.rb +314 -0
  449. data/lib/api_reference/models/new_subscription_percent_composite_price.rb +311 -0
  450. data/lib/api_reference/models/new_subscription_scalable_matrix_with_tiered_pricing_price.rb +315 -0
  451. data/lib/api_reference/models/new_subscription_scalable_matrix_with_unit_pricing_price.rb +315 -0
  452. data/lib/api_reference/models/new_subscription_threshold_total_amount_price.rb +314 -0
  453. data/lib/api_reference/models/new_subscription_tiered_package_price.rb +313 -0
  454. data/lib/api_reference/models/new_subscription_tiered_package_with_minimum_price.rb +314 -0
  455. data/lib/api_reference/models/new_subscription_tiered_price.rb +310 -0
  456. data/lib/api_reference/models/new_subscription_tiered_with_minimum_price.rb +313 -0
  457. data/lib/api_reference/models/new_subscription_tiered_with_proration_price.rb +313 -0
  458. data/lib/api_reference/models/new_subscription_unit_price.rb +310 -0
  459. data/lib/api_reference/models/new_subscription_unit_with_percent_price.rb +313 -0
  460. data/lib/api_reference/models/new_subscription_unit_with_proration_price.rb +313 -0
  461. data/lib/api_reference/models/new_tax_jar_configuration.rb +100 -0
  462. data/lib/api_reference/models/new_tiered_percentage_discount.rb +214 -0
  463. data/lib/api_reference/models/new_tiered_percentage_discount_tier.rb +118 -0
  464. data/lib/api_reference/models/new_top_up_invoice_settings.rb +117 -0
  465. data/lib/api_reference/models/new_top_up_invoice_settings2.rb +117 -0
  466. data/lib/api_reference/models/new_usage_discount.rb +202 -0
  467. data/lib/api_reference/models/operator.rb +36 -0
  468. data/lib/api_reference/models/other_sub_line_item.rb +144 -0
  469. data/lib/api_reference/models/package_config.rb +93 -0
  470. data/lib/api_reference/models/package_price.rb +584 -0
  471. data/lib/api_reference/models/package_with_allocation_config.rb +79 -0
  472. data/lib/api_reference/models/package_with_allocation_config1.rb +105 -0
  473. data/lib/api_reference/models/package_with_allocation_price.rb +588 -0
  474. data/lib/api_reference/models/pagination_metadata.rb +106 -0
  475. data/lib/api_reference/models/pay_invoice_params.rb +62 -0
  476. data/lib/api_reference/models/payment_attempt.rb +184 -0
  477. data/lib/api_reference/models/payment_configuration.rb +95 -0
  478. data/lib/api_reference/models/payment_configuration_item.rb +126 -0
  479. data/lib/api_reference/models/payment_method.rb +188 -0
  480. data/lib/api_reference/models/payment_method_type.rb +49 -0
  481. data/lib/api_reference/models/payment_provider.rb +36 -0
  482. data/lib/api_reference/models/payment_provider1.rb +52 -0
  483. data/lib/api_reference/models/per_price_cost.rb +145 -0
  484. data/lib/api_reference/models/percent_composite_config.rb +109 -0
  485. data/lib/api_reference/models/percent_composite_config1.rb +112 -0
  486. data/lib/api_reference/models/percent_composite_price.rb +585 -0
  487. data/lib/api_reference/models/percentage_discount.rb +151 -0
  488. data/lib/api_reference/models/percentage_discount_creation_params.rb +104 -0
  489. data/lib/api_reference/models/percentage_discount_interval.rb +188 -0
  490. data/lib/api_reference/models/percentage_tier.rb +122 -0
  491. data/lib/api_reference/models/ping_response.rb +73 -0
  492. data/lib/api_reference/models/plan.rb +501 -0
  493. data/lib/api_reference/models/plan_minified.rb +125 -0
  494. data/lib/api_reference/models/plan_minified_with_version.rb +141 -0
  495. data/lib/api_reference/models/plan_phase.rb +244 -0
  496. data/lib/api_reference/models/plan_phase_amount_discount_adjustment.rb +221 -0
  497. data/lib/api_reference/models/plan_phase_maximum_adjustment.rb +221 -0
  498. data/lib/api_reference/models/plan_phase_minimum_adjustment.rb +233 -0
  499. data/lib/api_reference/models/plan_phase_percentage_discount_adjustment.rb +221 -0
  500. data/lib/api_reference/models/plan_phase_tiered_percentage_discount_adjustment.rb +233 -0
  501. data/lib/api_reference/models/plan_phase_usage_discount_adjustment.rb +221 -0
  502. data/lib/api_reference/models/plan_version.rb +172 -0
  503. data/lib/api_reference/models/plan_version_change.rb +143 -0
  504. data/lib/api_reference/models/plan_version_changes.rb +92 -0
  505. data/lib/api_reference/models/plan_version_phase.rb +163 -0
  506. data/lib/api_reference/models/plans.rb +92 -0
  507. data/lib/api_reference/models/portal_session.rb +124 -0
  508. data/lib/api_reference/models/preview_event.rb +115 -0
  509. data/lib/api_reference/models/price_evaluation_request.rb +157 -0
  510. data/lib/api_reference/models/price_filter.rb +116 -0
  511. data/lib/api_reference/models/price_group.rb +132 -0
  512. data/lib/api_reference/models/price_interval.rb +319 -0
  513. data/lib/api_reference/models/price_interval_fixed_fee_quantity_transition_params.rb +112 -0
  514. data/lib/api_reference/models/price_type.rb +48 -0
  515. data/lib/api_reference/models/price_type6.rb +40 -0
  516. data/lib/api_reference/models/prices.rb +109 -0
  517. data/lib/api_reference/models/product.rb +123 -0
  518. data/lib/api_reference/models/provider_type.rb +36 -0
  519. data/lib/api_reference/models/quantity_only_override_price.rb +147 -0
  520. data/lib/api_reference/models/reason.rb +44 -0
  521. data/lib/api_reference/models/reason1.rb +44 -0
  522. data/lib/api_reference/models/redeem_coupon_params.rb +126 -0
  523. data/lib/api_reference/models/remove_plan_adjustment_params.rb +74 -0
  524. data/lib/api_reference/models/remove_plan_price_params.rb +74 -0
  525. data/lib/api_reference/models/remove_subscription_adjustment_params.rb +74 -0
  526. data/lib/api_reference/models/remove_subscription_price_params.rb +90 -0
  527. data/lib/api_reference/models/replace_plan_adjustment_params.rb +108 -0
  528. data/lib/api_reference/models/replace_plan_price_params.rb +112 -0
  529. data/lib/api_reference/models/replace_subscription_adjustment_params.rb +108 -0
  530. data/lib/api_reference/models/replace_subscription_price_params.rb +203 -0
  531. data/lib/api_reference/models/reporting_configuration.rb +87 -0
  532. data/lib/api_reference/models/request_too_large_error.rb +101 -0
  533. data/lib/api_reference/models/request_validation_error.rb +112 -0
  534. data/lib/api_reference/models/resource_not_found_error.rb +99 -0
  535. data/lib/api_reference/models/resource_too_large_error.rb +101 -0
  536. data/lib/api_reference/models/scalable_matrix_with_tiered_pricing_config.rb +112 -0
  537. data/lib/api_reference/models/scalable_matrix_with_tiered_pricing_config1.rb +146 -0
  538. data/lib/api_reference/models/scalable_matrix_with_tiered_pricing_price.rb +589 -0
  539. data/lib/api_reference/models/scalable_matrix_with_tiered_scaling_factor.rb +109 -0
  540. data/lib/api_reference/models/scalable_matrix_with_tiered_tier_entry.rb +92 -0
  541. data/lib/api_reference/models/scalable_matrix_with_unit_pricing_config.rb +125 -0
  542. data/lib/api_reference/models/scalable_matrix_with_unit_pricing_config1.rb +155 -0
  543. data/lib/api_reference/models/scalable_matrix_with_unit_pricing_price.rb +589 -0
  544. data/lib/api_reference/models/scalable_matrix_with_unit_scaling_factor.rb +109 -0
  545. data/lib/api_reference/models/set_default_version.rb +60 -0
  546. data/lib/api_reference/models/start_of_term.rb +26 -0
  547. data/lib/api_reference/models/status.rb +40 -0
  548. data/lib/api_reference/models/status1.rb +48 -0
  549. data/lib/api_reference/models/status10.rb +40 -0
  550. data/lib/api_reference/models/status11.rb +48 -0
  551. data/lib/api_reference/models/status12.rb +40 -0
  552. data/lib/api_reference/models/status13.rb +40 -0
  553. data/lib/api_reference/models/status14.rb +40 -0
  554. data/lib/api_reference/models/status17.rb +37 -0
  555. data/lib/api_reference/models/status18.rb +49 -0
  556. data/lib/api_reference/models/status23.rb +48 -0
  557. data/lib/api_reference/models/status28.rb +40 -0
  558. data/lib/api_reference/models/status3.rb +36 -0
  559. data/lib/api_reference/models/status7.rb +36 -0
  560. data/lib/api_reference/models/sub_line_item_grouping.rb +106 -0
  561. data/lib/api_reference/models/sub_line_item_matrix_config.rb +89 -0
  562. data/lib/api_reference/models/subscription.rb +680 -0
  563. data/lib/api_reference/models/subscription_change_list_response.rb +152 -0
  564. data/lib/api_reference/models/subscription_change_list_responses.rb +92 -0
  565. data/lib/api_reference/models/subscription_change_minified.rb +86 -0
  566. data/lib/api_reference/models/subscription_change_response.rb +217 -0
  567. data/lib/api_reference/models/subscription_costs.rb +81 -0
  568. data/lib/api_reference/models/subscription_minified.rb +86 -0
  569. data/lib/api_reference/models/subscription_plan_change.rb +502 -0
  570. data/lib/api_reference/models/subscription_schedule_item.rb +122 -0
  571. data/lib/api_reference/models/subscription_schedule_items.rb +92 -0
  572. data/lib/api_reference/models/subscription_trial_info.rb +96 -0
  573. data/lib/api_reference/models/subscription_usage_request_params.rb +207 -0
  574. data/lib/api_reference/models/subscriptions.rb +92 -0
  575. data/lib/api_reference/models/tax_amount.rb +123 -0
  576. data/lib/api_reference/models/threshold.rb +90 -0
  577. data/lib/api_reference/models/threshold_discount_group.rb +147 -0
  578. data/lib/api_reference/models/threshold_override.rb +121 -0
  579. data/lib/api_reference/models/threshold_override_params.rb +97 -0
  580. data/lib/api_reference/models/threshold_total_amount_config.rb +83 -0
  581. data/lib/api_reference/models/threshold_total_amount_config1.rb +101 -0
  582. data/lib/api_reference/models/threshold_total_amount_price.rb +588 -0
  583. data/lib/api_reference/models/tier.rb +105 -0
  584. data/lib/api_reference/models/tier_sub_line_item.rb +160 -0
  585. data/lib/api_reference/models/tier_sub_line_item_tier_config.rb +119 -0
  586. data/lib/api_reference/models/tiered_config.rb +98 -0
  587. data/lib/api_reference/models/tiered_conversion_rate_config.rb +81 -0
  588. data/lib/api_reference/models/tiered_package_price.rb +587 -0
  589. data/lib/api_reference/models/tiered_package_pricing_config.rb +83 -0
  590. data/lib/api_reference/models/tiered_package_pricing_config1.rb +109 -0
  591. data/lib/api_reference/models/tiered_package_pricing_with_minimum_config.rb +79 -0
  592. data/lib/api_reference/models/tiered_package_pricing_with_minimum_config1.rb +105 -0
  593. data/lib/api_reference/models/tiered_package_tier_item.rb +92 -0
  594. data/lib/api_reference/models/tiered_package_with_minimum_price.rb +588 -0
  595. data/lib/api_reference/models/tiered_package_with_minimum_tier_item.rb +106 -0
  596. data/lib/api_reference/models/tiered_percentage_discount.rb +164 -0
  597. data/lib/api_reference/models/tiered_percentage_discount_interval.rb +201 -0
  598. data/lib/api_reference/models/tiered_price.rb +584 -0
  599. data/lib/api_reference/models/tiered_pricing_with_minimum_config.rb +93 -0
  600. data/lib/api_reference/models/tiered_pricing_with_minimum_config1.rb +111 -0
  601. data/lib/api_reference/models/tiered_pricing_with_minimum_tier_item.rb +106 -0
  602. data/lib/api_reference/models/tiered_total_threshold.rb +90 -0
  603. data/lib/api_reference/models/tiered_with_minimum_price.rb +587 -0
  604. data/lib/api_reference/models/tiered_with_proration_config.rb +70 -0
  605. data/lib/api_reference/models/tiered_with_proration_config1.rb +88 -0
  606. data/lib/api_reference/models/tiered_with_proration_price.rb +587 -0
  607. data/lib/api_reference/models/tiered_with_proration_tier.rb +92 -0
  608. data/lib/api_reference/models/too_many_results_error.rb +101 -0
  609. data/lib/api_reference/models/top_up.rb +149 -0
  610. data/lib/api_reference/models/top_up_invoice_settings.rb +117 -0
  611. data/lib/api_reference/models/top_up_invoice_settings2.rb +117 -0
  612. data/lib/api_reference/models/top_ups.rb +92 -0
  613. data/lib/api_reference/models/trial_config.rb +104 -0
  614. data/lib/api_reference/models/trial_discount.rb +161 -0
  615. data/lib/api_reference/models/trial_end_date.rb +26 -0
  616. data/lib/api_reference/models/trigger_subscription_phase_params.rb +84 -0
  617. data/lib/api_reference/models/type.rb +40 -0
  618. data/lib/api_reference/models/type1.rb +36 -0
  619. data/lib/api_reference/models/type2.rb +26 -0
  620. data/lib/api_reference/models/type3.rb +36 -0
  621. data/lib/api_reference/models/type4.rb +36 -0
  622. data/lib/api_reference/models/type5.rb +492 -0
  623. data/lib/api_reference/models/type6.rb +40 -0
  624. data/lib/api_reference/models/type7.rb +36 -0
  625. data/lib/api_reference/models/ungrouped_subscription_usage.rb +99 -0
  626. data/lib/api_reference/models/ungrouped_subscription_usage_record.rb +133 -0
  627. data/lib/api_reference/models/unit_config.rb +85 -0
  628. data/lib/api_reference/models/unit_conversion_rate_config.rb +80 -0
  629. data/lib/api_reference/models/unit_price.rb +584 -0
  630. data/lib/api_reference/models/unit_with_percent_config.rb +68 -0
  631. data/lib/api_reference/models/unit_with_percent_config1.rb +90 -0
  632. data/lib/api_reference/models/unit_with_percent_price.rb +587 -0
  633. data/lib/api_reference/models/unit_with_proration_config.rb +60 -0
  634. data/lib/api_reference/models/unit_with_proration_config1.rb +74 -0
  635. data/lib/api_reference/models/unit_with_proration_price.rb +587 -0
  636. data/lib/api_reference/models/unschedule_fixed_fee_quantity_change_params.rb +60 -0
  637. data/lib/api_reference/models/upcoming_invoice.rb +838 -0
  638. data/lib/api_reference/models/update_alert_query_params.rb +65 -0
  639. data/lib/api_reference/models/update_alert_request_params.rb +116 -0
  640. data/lib/api_reference/models/update_invoice_request_params.rb +145 -0
  641. data/lib/api_reference/models/update_metric_request_params.rb +66 -0
  642. data/lib/api_reference/models/update_price_request_params.rb +66 -0
  643. data/lib/api_reference/models/update_subscription_params.rb +137 -0
  644. data/lib/api_reference/models/update_trial_request_params.rb +94 -0
  645. data/lib/api_reference/models/url_not_found.rb +101 -0
  646. data/lib/api_reference/models/usage.rb +131 -0
  647. data/lib/api_reference/models/usage_discount.rb +129 -0
  648. data/lib/api_reference/models/usage_discount_creation_params.rb +82 -0
  649. data/lib/api_reference/models/usage_discount_interval.rb +188 -0
  650. data/lib/api_reference/models/validation_error.rb +86 -0
  651. data/lib/api_reference/models/view_mode.rb +36 -0
  652. data/lib/api_reference/models/void_initiated_ledger_entry.rb +356 -0
  653. data/lib/api_reference/models/void_ledger_entry.rb +334 -0
  654. data/lib/api_reference/models/void_reason.rb +26 -0
  655. data/lib/api_reference/utilities/date_time_helper.rb +11 -0
  656. data/lib/api_reference/utilities/file_wrapper.rb +28 -0
  657. data/lib/api_reference/utilities/union_type_lookup.rb +1433 -0
  658. data/lib/api_reference.rb +752 -0
  659. metadata +742 -0
@@ -0,0 +1,843 @@
1
+ # api_reference
2
+ #
3
+ # This file was automatically generated by APIMATIC v3.0 (
4
+ # https://www.apimatic.io ).
5
+
6
+ require 'date'
7
+ module ApiReference
8
+ # An [`Invoice`](/core-concepts#invoice) is a fundamental billing entity,
9
+ # representing the request for payment for a single subscription. This
10
+ # includes a set of line items, which correspond to prices in the
11
+ # subscription's plan and can represent fixed recurring fees or usage-based
12
+ # fees. They are generated at the end of a billing period, or as the result of
13
+ # an action, such as a cancellation.
14
+ class Invoice < BaseModel
15
+ SKIP = Object.new
16
+ private_constant :SKIP
17
+
18
+ # User specified key-value pairs for the resource. If not present, this
19
+ # defaults to an empty dictionary. Individual keys can be removed by setting
20
+ # the value to `null`, and the entire metadata mapping can be cleared by
21
+ # setting `metadata` to `null`.
22
+ # @return [Hash[String, String]]
23
+ attr_accessor :metadata
24
+
25
+ # If the invoice has a status of `void`, this gives a timestamp when the
26
+ # invoice was voided.
27
+ # @return [DateTime]
28
+ attr_accessor :voided_at
29
+
30
+ # If the invoice has a status of `paid`, this gives a timestamp when the
31
+ # invoice was paid.
32
+ # @return [DateTime]
33
+ attr_accessor :paid_at
34
+
35
+ # If the invoice has been issued, this will be the time it transitioned to
36
+ # `issued` (even if it is now in a different state.)
37
+ # @return [DateTime]
38
+ attr_accessor :issued_at
39
+
40
+ # If the invoice is in draft, this timestamp will reflect when the invoice
41
+ # is scheduled to be issued.
42
+ # @return [DateTime]
43
+ attr_accessor :scheduled_issue_at
44
+
45
+ # If the invoice is in draft, this timestamp will reflect when the invoice
46
+ # is scheduled to be issued.
47
+ # @return [AutoCollection]
48
+ attr_accessor :auto_collection
49
+
50
+ # If the invoice failed to issue, this will be the last time it failed to
51
+ # issue (even if it is now in a different state.)
52
+ # @return [DateTime]
53
+ attr_accessor :issue_failed_at
54
+
55
+ # If the invoice failed to sync, this will be the last time an external
56
+ # invoicing provider sync was attempted. This field will always be `null`
57
+ # for invoices using Orb Invoicing.
58
+ # @return [DateTime]
59
+ attr_accessor :sync_failed_at
60
+
61
+ # If payment was attempted on this invoice but failed, this will be the time
62
+ # of the most recent attempt.
63
+ # @return [DateTime]
64
+ attr_accessor :payment_failed_at
65
+
66
+ # If payment was attempted on this invoice, this will be the start time of
67
+ # the most recent attempt. This field is especially useful for
68
+ # delayed-notification payment mechanisms (like bank transfers), where
69
+ # payment can take 3 days or more.
70
+ # @return [DateTime]
71
+ attr_accessor :payment_started_at
72
+
73
+ # This is the final amount required to be charged to the customer and
74
+ # reflects the application of the customer balance to the `total` of the
75
+ # invoice.
76
+ # @return [String]
77
+ attr_accessor :amount_due
78
+
79
+ # The creation time of the resource in Orb.
80
+ # @return [DateTime]
81
+ attr_accessor :created_at
82
+
83
+ # An ISO 4217 currency string or `credits`
84
+ # @return [String]
85
+ attr_accessor :currency
86
+
87
+ # An ISO 4217 currency string or `credits`
88
+ # @return [CustomerMinified]
89
+ attr_accessor :customer
90
+
91
+ # When the invoice payment is due. The due date is null if the invoice is
92
+ # not yet finalized.
93
+ # @return [DateTime]
94
+ attr_accessor :due_date
95
+
96
+ # When the invoice payment is due. The due date is null if the invoice is
97
+ # not yet finalized.
98
+ # @return [String]
99
+ attr_accessor :id
100
+
101
+ # The link to download the PDF representation of the `Invoice`.
102
+ # @return [String]
103
+ attr_accessor :invoice_pdf
104
+
105
+ # Automatically generated invoice number to help track and reconcile
106
+ # invoices. Invoice numbers have a prefix such as `RFOBWG`. These can be
107
+ # sequential per account or customer.
108
+ # @return [String]
109
+ attr_accessor :invoice_number
110
+
111
+ # Automatically generated invoice number to help track and reconcile
112
+ # invoices. Invoice numbers have a prefix such as `RFOBWG`. These can be
113
+ # sequential per account or customer.
114
+ # @return [SubscriptionMinified]
115
+ attr_accessor :subscription
116
+
117
+ # The total after any minimums and discounts have been applied.
118
+ # @return [String]
119
+ attr_accessor :total
120
+
121
+ # The total after any minimums and discounts have been applied.
122
+ # @return [Array[CustomerBalanceTransaction]]
123
+ attr_accessor :customer_balance_transactions
124
+
125
+ # The total after any minimums and discounts have been applied.
126
+ # @return [Status1]
127
+ attr_accessor :status
128
+
129
+ # The total after any minimums and discounts have been applied.
130
+ # @return [InvoiceSource]
131
+ attr_accessor :invoice_source
132
+
133
+ # The total after any minimums and discounts have been applied.
134
+ # @return [Address]
135
+ attr_accessor :shipping_address
136
+
137
+ # The total after any minimums and discounts have been applied.
138
+ # @return [Address]
139
+ attr_accessor :billing_address
140
+
141
+ # A URL for the customer-facing invoice portal. This URL expires 60 days
142
+ # after the link is generated, or 30 days after the invoice's due date —
143
+ # whichever is later.
144
+ # @return [String]
145
+ attr_accessor :hosted_invoice_url
146
+
147
+ # This is true if the invoice will be automatically issued in the future,
148
+ # and false otherwise.
149
+ # @return [TrueClass | FalseClass]
150
+ attr_accessor :will_auto_issue
151
+
152
+ # If the invoice has a status of `draft`, this will be the time that the
153
+ # invoice will be eligible to be issued, otherwise it will be `null`. If
154
+ # `auto-issue` is true, the invoice will automatically begin issuing at this
155
+ # time.
156
+ # @return [DateTime]
157
+ attr_accessor :eligible_to_issue_at
158
+
159
+ # If the invoice has a status of `draft`, this will be the time that the
160
+ # invoice will be eligible to be issued, otherwise it will be `null`. If
161
+ # `auto-issue` is true, the invoice will automatically begin issuing at this
162
+ # time.
163
+ # @return [CustomerTaxId]
164
+ attr_accessor :customer_tax_id
165
+
166
+ # Free-form text which is available on the invoice PDF and the Orb invoice
167
+ # portal.
168
+ # @return [String]
169
+ attr_accessor :memo
170
+
171
+ # A list of credit notes associated with the invoice
172
+ # @return [Array[CreditNoteSummary]]
173
+ attr_accessor :credit_notes
174
+
175
+ # A list of payment attempts associated with the invoice
176
+ # @return [Array[PaymentAttempt]]
177
+ attr_accessor :payment_attempts
178
+
179
+ # This field is deprecated in favor of `discounts`. If a `discounts` list is
180
+ # provided, the first discount in the list will be returned. If the list is
181
+ # empty, `None` will be returned.
182
+ # @return [Object]
183
+ attr_accessor :discount
184
+
185
+ # This field is deprecated in favor of `discounts`. If a `discounts` list is
186
+ # provided, the first discount in the list will be returned. If the list is
187
+ # empty, `None` will be returned.
188
+ # @return [Array[Object]]
189
+ attr_accessor :discounts
190
+
191
+ # This field is deprecated in favor of `discounts`. If a `discounts` list is
192
+ # provided, the first discount in the list will be returned. If the list is
193
+ # empty, `None` will be returned.
194
+ # @return [Minimum]
195
+ attr_accessor :minimum
196
+
197
+ # This field is deprecated in favor of `discounts`. If a `discounts` list is
198
+ # provided, the first discount in the list will be returned. If the list is
199
+ # empty, `None` will be returned.
200
+ # @return [String]
201
+ attr_accessor :minimum_amount
202
+
203
+ # This field is deprecated in favor of `discounts`. If a `discounts` list is
204
+ # provided, the first discount in the list will be returned. If the list is
205
+ # empty, `None` will be returned.
206
+ # @return [Maximum]
207
+ attr_accessor :maximum
208
+
209
+ # This field is deprecated in favor of `discounts`. If a `discounts` list is
210
+ # provided, the first discount in the list will be returned. If the list is
211
+ # empty, `None` will be returned.
212
+ # @return [String]
213
+ attr_accessor :maximum_amount
214
+
215
+ # The breakdown of prices in this invoice.
216
+ # @return [Array[InvoiceLineItem]]
217
+ attr_accessor :line_items
218
+
219
+ # The total before any discounts and minimums are applied.
220
+ # @return [String]
221
+ attr_accessor :subtotal
222
+
223
+ # The scheduled date of the invoice
224
+ # @return [DateTime]
225
+ attr_accessor :invoice_date
226
+
227
+ # A mapping from model property names to API property names.
228
+ def self.names
229
+ @_hash = {} if @_hash.nil?
230
+ @_hash['metadata'] = 'metadata'
231
+ @_hash['voided_at'] = 'voided_at'
232
+ @_hash['paid_at'] = 'paid_at'
233
+ @_hash['issued_at'] = 'issued_at'
234
+ @_hash['scheduled_issue_at'] = 'scheduled_issue_at'
235
+ @_hash['auto_collection'] = 'auto_collection'
236
+ @_hash['issue_failed_at'] = 'issue_failed_at'
237
+ @_hash['sync_failed_at'] = 'sync_failed_at'
238
+ @_hash['payment_failed_at'] = 'payment_failed_at'
239
+ @_hash['payment_started_at'] = 'payment_started_at'
240
+ @_hash['amount_due'] = 'amount_due'
241
+ @_hash['created_at'] = 'created_at'
242
+ @_hash['currency'] = 'currency'
243
+ @_hash['customer'] = 'customer'
244
+ @_hash['due_date'] = 'due_date'
245
+ @_hash['id'] = 'id'
246
+ @_hash['invoice_pdf'] = 'invoice_pdf'
247
+ @_hash['invoice_number'] = 'invoice_number'
248
+ @_hash['subscription'] = 'subscription'
249
+ @_hash['total'] = 'total'
250
+ @_hash['customer_balance_transactions'] =
251
+ 'customer_balance_transactions'
252
+ @_hash['status'] = 'status'
253
+ @_hash['invoice_source'] = 'invoice_source'
254
+ @_hash['shipping_address'] = 'shipping_address'
255
+ @_hash['billing_address'] = 'billing_address'
256
+ @_hash['hosted_invoice_url'] = 'hosted_invoice_url'
257
+ @_hash['will_auto_issue'] = 'will_auto_issue'
258
+ @_hash['eligible_to_issue_at'] = 'eligible_to_issue_at'
259
+ @_hash['customer_tax_id'] = 'customer_tax_id'
260
+ @_hash['memo'] = 'memo'
261
+ @_hash['credit_notes'] = 'credit_notes'
262
+ @_hash['payment_attempts'] = 'payment_attempts'
263
+ @_hash['discount'] = 'discount'
264
+ @_hash['discounts'] = 'discounts'
265
+ @_hash['minimum'] = 'minimum'
266
+ @_hash['minimum_amount'] = 'minimum_amount'
267
+ @_hash['maximum'] = 'maximum'
268
+ @_hash['maximum_amount'] = 'maximum_amount'
269
+ @_hash['line_items'] = 'line_items'
270
+ @_hash['subtotal'] = 'subtotal'
271
+ @_hash['invoice_date'] = 'invoice_date'
272
+ @_hash
273
+ end
274
+
275
+ # An array for optional fields
276
+ def self.optionals
277
+ []
278
+ end
279
+
280
+ # An array for nullable fields
281
+ def self.nullables
282
+ %w[
283
+ voided_at
284
+ paid_at
285
+ issued_at
286
+ scheduled_issue_at
287
+ issue_failed_at
288
+ sync_failed_at
289
+ payment_failed_at
290
+ payment_started_at
291
+ due_date
292
+ invoice_pdf
293
+ subscription
294
+ shipping_address
295
+ billing_address
296
+ hosted_invoice_url
297
+ eligible_to_issue_at
298
+ customer_tax_id
299
+ memo
300
+ discount
301
+ minimum
302
+ minimum_amount
303
+ maximum
304
+ maximum_amount
305
+ ]
306
+ end
307
+
308
+ def initialize(metadata:, voided_at:, paid_at:, issued_at:,
309
+ scheduled_issue_at:, auto_collection:, issue_failed_at:,
310
+ sync_failed_at:, payment_failed_at:, payment_started_at:,
311
+ amount_due:, created_at:, currency:, customer:, due_date:,
312
+ id:, invoice_pdf:, invoice_number:, subscription:, total:,
313
+ customer_balance_transactions:, status:, invoice_source:,
314
+ shipping_address:, billing_address:, hosted_invoice_url:,
315
+ will_auto_issue:, eligible_to_issue_at:, customer_tax_id:,
316
+ memo:, credit_notes:, payment_attempts:, discount:,
317
+ discounts:, minimum:, minimum_amount:, maximum:,
318
+ maximum_amount:, line_items:, subtotal:, invoice_date:,
319
+ additional_properties: nil)
320
+ # Add additional model properties to the instance
321
+ additional_properties = {} if additional_properties.nil?
322
+
323
+ @metadata = metadata
324
+ @voided_at = voided_at
325
+ @paid_at = paid_at
326
+ @issued_at = issued_at
327
+ @scheduled_issue_at = scheduled_issue_at
328
+ @auto_collection = auto_collection
329
+ @issue_failed_at = issue_failed_at
330
+ @sync_failed_at = sync_failed_at
331
+ @payment_failed_at = payment_failed_at
332
+ @payment_started_at = payment_started_at
333
+ @amount_due = amount_due
334
+ @created_at = created_at
335
+ @currency = currency
336
+ @customer = customer
337
+ @due_date = due_date
338
+ @id = id
339
+ @invoice_pdf = invoice_pdf
340
+ @invoice_number = invoice_number
341
+ @subscription = subscription
342
+ @total = total
343
+ @customer_balance_transactions = customer_balance_transactions
344
+ @status = status
345
+ @invoice_source = invoice_source
346
+ @shipping_address = shipping_address
347
+ @billing_address = billing_address
348
+ @hosted_invoice_url = hosted_invoice_url
349
+ @will_auto_issue = will_auto_issue
350
+ @eligible_to_issue_at = eligible_to_issue_at
351
+ @customer_tax_id = customer_tax_id
352
+ @memo = memo
353
+ @credit_notes = credit_notes
354
+ @payment_attempts = payment_attempts
355
+ @discount = discount
356
+ @discounts = discounts
357
+ @minimum = minimum
358
+ @minimum_amount = minimum_amount
359
+ @maximum = maximum
360
+ @maximum_amount = maximum_amount
361
+ @line_items = line_items
362
+ @subtotal = subtotal
363
+ @invoice_date = invoice_date
364
+ @additional_properties = additional_properties
365
+ end
366
+
367
+ # Creates an instance of the object from a hash.
368
+ def self.from_hash(hash)
369
+ return nil unless hash
370
+
371
+ # Extract variables from the hash.
372
+ metadata = hash.key?('metadata') ? hash['metadata'] : nil
373
+ voided_at = if hash.key?('voided_at')
374
+ (DateTimeHelper.from_rfc3339(hash['voided_at']) if hash['voided_at'])
375
+ end
376
+ paid_at = if hash.key?('paid_at')
377
+ (DateTimeHelper.from_rfc3339(hash['paid_at']) if hash['paid_at'])
378
+ end
379
+ issued_at = if hash.key?('issued_at')
380
+ (DateTimeHelper.from_rfc3339(hash['issued_at']) if hash['issued_at'])
381
+ end
382
+ scheduled_issue_at = if hash.key?('scheduled_issue_at')
383
+ (DateTimeHelper.from_rfc3339(hash['scheduled_issue_at']) if hash['scheduled_issue_at'])
384
+ end
385
+ auto_collection = AutoCollection.from_hash(hash['auto_collection']) if
386
+ hash['auto_collection']
387
+ issue_failed_at = if hash.key?('issue_failed_at')
388
+ (DateTimeHelper.from_rfc3339(hash['issue_failed_at']) if hash['issue_failed_at'])
389
+ end
390
+ sync_failed_at = if hash.key?('sync_failed_at')
391
+ (DateTimeHelper.from_rfc3339(hash['sync_failed_at']) if hash['sync_failed_at'])
392
+ end
393
+ payment_failed_at = if hash.key?('payment_failed_at')
394
+ (DateTimeHelper.from_rfc3339(hash['payment_failed_at']) if hash['payment_failed_at'])
395
+ end
396
+ payment_started_at = if hash.key?('payment_started_at')
397
+ (DateTimeHelper.from_rfc3339(hash['payment_started_at']) if hash['payment_started_at'])
398
+ end
399
+ amount_due = hash.key?('amount_due') ? hash['amount_due'] : nil
400
+ created_at = if hash.key?('created_at')
401
+ (DateTimeHelper.from_rfc3339(hash['created_at']) if hash['created_at'])
402
+ end
403
+ currency = hash.key?('currency') ? hash['currency'] : nil
404
+ customer = CustomerMinified.from_hash(hash['customer']) if hash['customer']
405
+ due_date = if hash.key?('due_date')
406
+ (DateTimeHelper.from_rfc3339(hash['due_date']) if hash['due_date'])
407
+ end
408
+ id = hash.key?('id') ? hash['id'] : nil
409
+ invoice_pdf = hash.key?('invoice_pdf') ? hash['invoice_pdf'] : nil
410
+ invoice_number =
411
+ hash.key?('invoice_number') ? hash['invoice_number'] : nil
412
+ subscription = SubscriptionMinified.from_hash(hash['subscription']) if hash['subscription']
413
+ total = hash.key?('total') ? hash['total'] : nil
414
+ # Parameter is an array, so we need to iterate through it
415
+ customer_balance_transactions = nil
416
+ unless hash['customer_balance_transactions'].nil?
417
+ customer_balance_transactions = []
418
+ hash['customer_balance_transactions'].each do |structure|
419
+ customer_balance_transactions << (CustomerBalanceTransaction.from_hash(structure) if structure)
420
+ end
421
+ end
422
+
423
+ customer_balance_transactions = nil unless hash.key?('customer_balance_transactions')
424
+ status = hash.key?('status') ? hash['status'] : nil
425
+ invoice_source =
426
+ hash.key?('invoice_source') ? hash['invoice_source'] : nil
427
+ shipping_address = Address.from_hash(hash['shipping_address']) if hash['shipping_address']
428
+ billing_address = Address.from_hash(hash['billing_address']) if hash['billing_address']
429
+ hosted_invoice_url =
430
+ hash.key?('hosted_invoice_url') ? hash['hosted_invoice_url'] : nil
431
+ will_auto_issue =
432
+ hash.key?('will_auto_issue') ? hash['will_auto_issue'] : nil
433
+ eligible_to_issue_at = if hash.key?('eligible_to_issue_at')
434
+ (DateTimeHelper.from_rfc3339(hash['eligible_to_issue_at']) if hash['eligible_to_issue_at'])
435
+ end
436
+ customer_tax_id = CustomerTaxId.from_hash(hash['customer_tax_id']) if
437
+ hash['customer_tax_id']
438
+ memo = hash.key?('memo') ? hash['memo'] : nil
439
+ # Parameter is an array, so we need to iterate through it
440
+ credit_notes = nil
441
+ unless hash['credit_notes'].nil?
442
+ credit_notes = []
443
+ hash['credit_notes'].each do |structure|
444
+ credit_notes << (CreditNoteSummary.from_hash(structure) if structure)
445
+ end
446
+ end
447
+
448
+ credit_notes = nil unless hash.key?('credit_notes')
449
+ # Parameter is an array, so we need to iterate through it
450
+ payment_attempts = nil
451
+ unless hash['payment_attempts'].nil?
452
+ payment_attempts = []
453
+ hash['payment_attempts'].each do |structure|
454
+ payment_attempts << (PaymentAttempt.from_hash(structure) if structure)
455
+ end
456
+ end
457
+
458
+ payment_attempts = nil unless hash.key?('payment_attempts')
459
+ discount = hash.key?('discount') ? hash['discount'] : nil
460
+ discounts = hash.key?('discounts') ? APIHelper.deserialize_union_type(
461
+ UnionTypeLookUp.get(:InvoiceLevelDiscount), hash['discounts']
462
+ ) : nil
463
+ minimum = Minimum.from_hash(hash['minimum']) if hash['minimum']
464
+ minimum_amount =
465
+ hash.key?('minimum_amount') ? hash['minimum_amount'] : nil
466
+ maximum = Maximum.from_hash(hash['maximum']) if hash['maximum']
467
+ maximum_amount =
468
+ hash.key?('maximum_amount') ? hash['maximum_amount'] : nil
469
+ # Parameter is an array, so we need to iterate through it
470
+ line_items = nil
471
+ unless hash['line_items'].nil?
472
+ line_items = []
473
+ hash['line_items'].each do |structure|
474
+ line_items << (InvoiceLineItem.from_hash(structure) if structure)
475
+ end
476
+ end
477
+
478
+ line_items = nil unless hash.key?('line_items')
479
+ subtotal = hash.key?('subtotal') ? hash['subtotal'] : nil
480
+ invoice_date = if hash.key?('invoice_date')
481
+ (DateTimeHelper.from_rfc3339(hash['invoice_date']) if hash['invoice_date'])
482
+ end
483
+
484
+ # Create a new hash for additional properties, removing known properties.
485
+ new_hash = hash.reject { |k, _| names.value?(k) }
486
+
487
+ additional_properties = APIHelper.get_additional_properties(
488
+ new_hash, proc { |value| value }
489
+ )
490
+
491
+ # Create object from extracted values.
492
+ Invoice.new(metadata: metadata,
493
+ voided_at: voided_at,
494
+ paid_at: paid_at,
495
+ issued_at: issued_at,
496
+ scheduled_issue_at: scheduled_issue_at,
497
+ auto_collection: auto_collection,
498
+ issue_failed_at: issue_failed_at,
499
+ sync_failed_at: sync_failed_at,
500
+ payment_failed_at: payment_failed_at,
501
+ payment_started_at: payment_started_at,
502
+ amount_due: amount_due,
503
+ created_at: created_at,
504
+ currency: currency,
505
+ customer: customer,
506
+ due_date: due_date,
507
+ id: id,
508
+ invoice_pdf: invoice_pdf,
509
+ invoice_number: invoice_number,
510
+ subscription: subscription,
511
+ total: total,
512
+ customer_balance_transactions: customer_balance_transactions,
513
+ status: status,
514
+ invoice_source: invoice_source,
515
+ shipping_address: shipping_address,
516
+ billing_address: billing_address,
517
+ hosted_invoice_url: hosted_invoice_url,
518
+ will_auto_issue: will_auto_issue,
519
+ eligible_to_issue_at: eligible_to_issue_at,
520
+ customer_tax_id: customer_tax_id,
521
+ memo: memo,
522
+ credit_notes: credit_notes,
523
+ payment_attempts: payment_attempts,
524
+ discount: discount,
525
+ discounts: discounts,
526
+ minimum: minimum,
527
+ minimum_amount: minimum_amount,
528
+ maximum: maximum,
529
+ maximum_amount: maximum_amount,
530
+ line_items: line_items,
531
+ subtotal: subtotal,
532
+ invoice_date: invoice_date,
533
+ additional_properties: additional_properties)
534
+ end
535
+
536
+ def to_custom_voided_at
537
+ DateTimeHelper.to_rfc3339(voided_at)
538
+ end
539
+
540
+ def to_custom_paid_at
541
+ DateTimeHelper.to_rfc3339(paid_at)
542
+ end
543
+
544
+ def to_custom_issued_at
545
+ DateTimeHelper.to_rfc3339(issued_at)
546
+ end
547
+
548
+ def to_custom_scheduled_issue_at
549
+ DateTimeHelper.to_rfc3339(scheduled_issue_at)
550
+ end
551
+
552
+ def to_custom_issue_failed_at
553
+ DateTimeHelper.to_rfc3339(issue_failed_at)
554
+ end
555
+
556
+ def to_custom_sync_failed_at
557
+ DateTimeHelper.to_rfc3339(sync_failed_at)
558
+ end
559
+
560
+ def to_custom_payment_failed_at
561
+ DateTimeHelper.to_rfc3339(payment_failed_at)
562
+ end
563
+
564
+ def to_custom_payment_started_at
565
+ DateTimeHelper.to_rfc3339(payment_started_at)
566
+ end
567
+
568
+ def to_custom_created_at
569
+ DateTimeHelper.to_rfc3339(created_at)
570
+ end
571
+
572
+ def to_custom_due_date
573
+ DateTimeHelper.to_rfc3339(due_date)
574
+ end
575
+
576
+ def to_custom_eligible_to_issue_at
577
+ DateTimeHelper.to_rfc3339(eligible_to_issue_at)
578
+ end
579
+
580
+ def to_custom_invoice_date
581
+ DateTimeHelper.to_rfc3339(invoice_date)
582
+ end
583
+
584
+ # Validates an instance of the object from a given value.
585
+ # @param [Invoice | Hash] The value against the validation is performed.
586
+ def self.validate(value)
587
+ if value.instance_of? self
588
+ return (
589
+ APIHelper.valid_type?(value.metadata,
590
+ ->(val) { val.instance_of? String }) and
591
+ APIHelper.valid_type?(value.voided_at,
592
+ ->(val) { val.instance_of? DateTime }) and
593
+ APIHelper.valid_type?(value.paid_at,
594
+ ->(val) { val.instance_of? DateTime }) and
595
+ APIHelper.valid_type?(value.issued_at,
596
+ ->(val) { val.instance_of? DateTime }) and
597
+ APIHelper.valid_type?(value.scheduled_issue_at,
598
+ ->(val) { val.instance_of? DateTime }) and
599
+ APIHelper.valid_type?(value.auto_collection,
600
+ ->(val) { AutoCollection.validate(val) },
601
+ is_model_hash: true) and
602
+ APIHelper.valid_type?(value.issue_failed_at,
603
+ ->(val) { val.instance_of? DateTime }) and
604
+ APIHelper.valid_type?(value.sync_failed_at,
605
+ ->(val) { val.instance_of? DateTime }) and
606
+ APIHelper.valid_type?(value.payment_failed_at,
607
+ ->(val) { val.instance_of? DateTime }) and
608
+ APIHelper.valid_type?(value.payment_started_at,
609
+ ->(val) { val.instance_of? DateTime }) and
610
+ APIHelper.valid_type?(value.amount_due,
611
+ ->(val) { val.instance_of? String }) and
612
+ APIHelper.valid_type?(value.created_at,
613
+ ->(val) { val.instance_of? DateTime }) and
614
+ APIHelper.valid_type?(value.currency,
615
+ ->(val) { val.instance_of? String }) and
616
+ APIHelper.valid_type?(value.customer,
617
+ ->(val) { CustomerMinified.validate(val) },
618
+ is_model_hash: true) and
619
+ APIHelper.valid_type?(value.due_date,
620
+ ->(val) { val.instance_of? DateTime }) and
621
+ APIHelper.valid_type?(value.id,
622
+ ->(val) { val.instance_of? String }) and
623
+ APIHelper.valid_type?(value.invoice_pdf,
624
+ ->(val) { val.instance_of? String }) and
625
+ APIHelper.valid_type?(value.invoice_number,
626
+ ->(val) { val.instance_of? String }) and
627
+ APIHelper.valid_type?(value.subscription,
628
+ ->(val) { SubscriptionMinified.validate(val) },
629
+ is_model_hash: true) and
630
+ APIHelper.valid_type?(value.total,
631
+ ->(val) { val.instance_of? String }) and
632
+ APIHelper.valid_type?(value.customer_balance_transactions,
633
+ ->(val) { CustomerBalanceTransaction.validate(val) },
634
+ is_model_hash: true,
635
+ is_inner_model_hash: true) and
636
+ APIHelper.valid_type?(value.status,
637
+ ->(val) { Status1.validate(val) }) and
638
+ APIHelper.valid_type?(value.invoice_source,
639
+ ->(val) { InvoiceSource.validate(val) }) and
640
+ APIHelper.valid_type?(value.shipping_address,
641
+ ->(val) { Address.validate(val) },
642
+ is_model_hash: true) and
643
+ APIHelper.valid_type?(value.billing_address,
644
+ ->(val) { Address.validate(val) },
645
+ is_model_hash: true) and
646
+ APIHelper.valid_type?(value.hosted_invoice_url,
647
+ ->(val) { val.instance_of? String }) and
648
+ APIHelper.valid_type?(value.will_auto_issue,
649
+ ->(val) { val.instance_of? TrueClass or val.instance_of? FalseClass }) and
650
+ APIHelper.valid_type?(value.eligible_to_issue_at,
651
+ ->(val) { val.instance_of? DateTime }) and
652
+ APIHelper.valid_type?(value.customer_tax_id,
653
+ ->(val) { CustomerTaxId.validate(val) },
654
+ is_model_hash: true) and
655
+ APIHelper.valid_type?(value.memo,
656
+ ->(val) { val.instance_of? String }) and
657
+ APIHelper.valid_type?(value.credit_notes,
658
+ ->(val) { CreditNoteSummary.validate(val) },
659
+ is_model_hash: true,
660
+ is_inner_model_hash: true) and
661
+ APIHelper.valid_type?(value.payment_attempts,
662
+ ->(val) { PaymentAttempt.validate(val) },
663
+ is_model_hash: true,
664
+ is_inner_model_hash: true) and
665
+ APIHelper.valid_type?(value.discount,
666
+ ->(val) { val.instance_of? Object }) and
667
+ UnionTypeLookUp.get(:InvoiceLevelDiscount)
668
+ .validate(value.discounts) and
669
+ APIHelper.valid_type?(value.minimum,
670
+ ->(val) { Minimum.validate(val) },
671
+ is_model_hash: true) and
672
+ APIHelper.valid_type?(value.minimum_amount,
673
+ ->(val) { val.instance_of? String }) and
674
+ APIHelper.valid_type?(value.maximum,
675
+ ->(val) { Maximum.validate(val) },
676
+ is_model_hash: true) and
677
+ APIHelper.valid_type?(value.maximum_amount,
678
+ ->(val) { val.instance_of? String }) and
679
+ APIHelper.valid_type?(value.line_items,
680
+ ->(val) { InvoiceLineItem.validate(val) },
681
+ is_model_hash: true,
682
+ is_inner_model_hash: true) and
683
+ APIHelper.valid_type?(value.subtotal,
684
+ ->(val) { val.instance_of? String }) and
685
+ APIHelper.valid_type?(value.invoice_date,
686
+ ->(val) { val.instance_of? DateTime })
687
+ )
688
+ end
689
+
690
+ return false unless value.instance_of? Hash
691
+
692
+ (
693
+ APIHelper.valid_type?(value['metadata'],
694
+ ->(val) { val.instance_of? String }) and
695
+ APIHelper.valid_type?(value['voided_at'],
696
+ ->(val) { val.instance_of? String }) and
697
+ APIHelper.valid_type?(value['paid_at'],
698
+ ->(val) { val.instance_of? String }) and
699
+ APIHelper.valid_type?(value['issued_at'],
700
+ ->(val) { val.instance_of? String }) and
701
+ APIHelper.valid_type?(value['scheduled_issue_at'],
702
+ ->(val) { val.instance_of? String }) and
703
+ APIHelper.valid_type?(value['auto_collection'],
704
+ ->(val) { AutoCollection.validate(val) },
705
+ is_model_hash: true) and
706
+ APIHelper.valid_type?(value['issue_failed_at'],
707
+ ->(val) { val.instance_of? String }) and
708
+ APIHelper.valid_type?(value['sync_failed_at'],
709
+ ->(val) { val.instance_of? String }) and
710
+ APIHelper.valid_type?(value['payment_failed_at'],
711
+ ->(val) { val.instance_of? String }) and
712
+ APIHelper.valid_type?(value['payment_started_at'],
713
+ ->(val) { val.instance_of? String }) and
714
+ APIHelper.valid_type?(value['amount_due'],
715
+ ->(val) { val.instance_of? String }) and
716
+ APIHelper.valid_type?(value['created_at'],
717
+ ->(val) { val.instance_of? String }) and
718
+ APIHelper.valid_type?(value['currency'],
719
+ ->(val) { val.instance_of? String }) and
720
+ APIHelper.valid_type?(value['customer'],
721
+ ->(val) { CustomerMinified.validate(val) },
722
+ is_model_hash: true) and
723
+ APIHelper.valid_type?(value['due_date'],
724
+ ->(val) { val.instance_of? String }) and
725
+ APIHelper.valid_type?(value['id'],
726
+ ->(val) { val.instance_of? String }) and
727
+ APIHelper.valid_type?(value['invoice_pdf'],
728
+ ->(val) { val.instance_of? String }) and
729
+ APIHelper.valid_type?(value['invoice_number'],
730
+ ->(val) { val.instance_of? String }) and
731
+ APIHelper.valid_type?(value['subscription'],
732
+ ->(val) { SubscriptionMinified.validate(val) },
733
+ is_model_hash: true) and
734
+ APIHelper.valid_type?(value['total'],
735
+ ->(val) { val.instance_of? String }) and
736
+ APIHelper.valid_type?(value['customer_balance_transactions'],
737
+ ->(val) { CustomerBalanceTransaction.validate(val) },
738
+ is_model_hash: true,
739
+ is_inner_model_hash: true) and
740
+ APIHelper.valid_type?(value['status'],
741
+ ->(val) { Status1.validate(val) }) and
742
+ APIHelper.valid_type?(value['invoice_source'],
743
+ ->(val) { InvoiceSource.validate(val) }) and
744
+ APIHelper.valid_type?(value['shipping_address'],
745
+ ->(val) { Address.validate(val) },
746
+ is_model_hash: true) and
747
+ APIHelper.valid_type?(value['billing_address'],
748
+ ->(val) { Address.validate(val) },
749
+ is_model_hash: true) and
750
+ APIHelper.valid_type?(value['hosted_invoice_url'],
751
+ ->(val) { val.instance_of? String }) and
752
+ APIHelper.valid_type?(value['will_auto_issue'],
753
+ ->(val) { val.instance_of? TrueClass or val.instance_of? FalseClass }) and
754
+ APIHelper.valid_type?(value['eligible_to_issue_at'],
755
+ ->(val) { val.instance_of? String }) and
756
+ APIHelper.valid_type?(value['customer_tax_id'],
757
+ ->(val) { CustomerTaxId.validate(val) },
758
+ is_model_hash: true) and
759
+ APIHelper.valid_type?(value['memo'],
760
+ ->(val) { val.instance_of? String }) and
761
+ APIHelper.valid_type?(value['credit_notes'],
762
+ ->(val) { CreditNoteSummary.validate(val) },
763
+ is_model_hash: true,
764
+ is_inner_model_hash: true) and
765
+ APIHelper.valid_type?(value['payment_attempts'],
766
+ ->(val) { PaymentAttempt.validate(val) },
767
+ is_model_hash: true,
768
+ is_inner_model_hash: true) and
769
+ APIHelper.valid_type?(value['discount'],
770
+ ->(val) { val.instance_of? Object }) and
771
+ UnionTypeLookUp.get(:InvoiceLevelDiscount)
772
+ .validate(value['discounts']) and
773
+ APIHelper.valid_type?(value['minimum'],
774
+ ->(val) { Minimum.validate(val) },
775
+ is_model_hash: true) and
776
+ APIHelper.valid_type?(value['minimum_amount'],
777
+ ->(val) { val.instance_of? String }) and
778
+ APIHelper.valid_type?(value['maximum'],
779
+ ->(val) { Maximum.validate(val) },
780
+ is_model_hash: true) and
781
+ APIHelper.valid_type?(value['maximum_amount'],
782
+ ->(val) { val.instance_of? String }) and
783
+ APIHelper.valid_type?(value['line_items'],
784
+ ->(val) { InvoiceLineItem.validate(val) },
785
+ is_model_hash: true,
786
+ is_inner_model_hash: true) and
787
+ APIHelper.valid_type?(value['subtotal'],
788
+ ->(val) { val.instance_of? String }) and
789
+ APIHelper.valid_type?(value['invoice_date'],
790
+ ->(val) { val.instance_of? String })
791
+ )
792
+ end
793
+
794
+ # Provides a human-readable string representation of the object.
795
+ def to_s
796
+ class_name = self.class.name.split('::').last
797
+ "<#{class_name} metadata: #{@metadata}, voided_at: #{@voided_at}, paid_at: #{@paid_at},"\
798
+ " issued_at: #{@issued_at}, scheduled_issue_at: #{@scheduled_issue_at}, auto_collection:"\
799
+ " #{@auto_collection}, issue_failed_at: #{@issue_failed_at}, sync_failed_at:"\
800
+ " #{@sync_failed_at}, payment_failed_at: #{@payment_failed_at}, payment_started_at:"\
801
+ " #{@payment_started_at}, amount_due: #{@amount_due}, created_at: #{@created_at}, currency:"\
802
+ " #{@currency}, customer: #{@customer}, due_date: #{@due_date}, id: #{@id}, invoice_pdf:"\
803
+ " #{@invoice_pdf}, invoice_number: #{@invoice_number}, subscription: #{@subscription},"\
804
+ " total: #{@total}, customer_balance_transactions: #{@customer_balance_transactions},"\
805
+ " status: #{@status}, invoice_source: #{@invoice_source}, shipping_address:"\
806
+ " #{@shipping_address}, billing_address: #{@billing_address}, hosted_invoice_url:"\
807
+ " #{@hosted_invoice_url}, will_auto_issue: #{@will_auto_issue}, eligible_to_issue_at:"\
808
+ " #{@eligible_to_issue_at}, customer_tax_id: #{@customer_tax_id}, memo: #{@memo},"\
809
+ " credit_notes: #{@credit_notes}, payment_attempts: #{@payment_attempts}, discount:"\
810
+ " #{@discount}, discounts: #{@discounts}, minimum: #{@minimum}, minimum_amount:"\
811
+ " #{@minimum_amount}, maximum: #{@maximum}, maximum_amount: #{@maximum_amount}, line_items:"\
812
+ " #{@line_items}, subtotal: #{@subtotal}, invoice_date: #{@invoice_date},"\
813
+ " additional_properties: #{@additional_properties}>"
814
+ end
815
+
816
+ # Provides a debugging-friendly string with detailed object information.
817
+ def inspect
818
+ class_name = self.class.name.split('::').last
819
+ "<#{class_name} metadata: #{@metadata.inspect}, voided_at: #{@voided_at.inspect}, paid_at:"\
820
+ " #{@paid_at.inspect}, issued_at: #{@issued_at.inspect}, scheduled_issue_at:"\
821
+ " #{@scheduled_issue_at.inspect}, auto_collection: #{@auto_collection.inspect},"\
822
+ " issue_failed_at: #{@issue_failed_at.inspect}, sync_failed_at: #{@sync_failed_at.inspect},"\
823
+ " payment_failed_at: #{@payment_failed_at.inspect}, payment_started_at:"\
824
+ " #{@payment_started_at.inspect}, amount_due: #{@amount_due.inspect}, created_at:"\
825
+ " #{@created_at.inspect}, currency: #{@currency.inspect}, customer: #{@customer.inspect},"\
826
+ " due_date: #{@due_date.inspect}, id: #{@id.inspect}, invoice_pdf: #{@invoice_pdf.inspect},"\
827
+ " invoice_number: #{@invoice_number.inspect}, subscription: #{@subscription.inspect}, total:"\
828
+ " #{@total.inspect}, customer_balance_transactions:"\
829
+ " #{@customer_balance_transactions.inspect}, status: #{@status.inspect}, invoice_source:"\
830
+ " #{@invoice_source.inspect}, shipping_address: #{@shipping_address.inspect},"\
831
+ " billing_address: #{@billing_address.inspect}, hosted_invoice_url:"\
832
+ " #{@hosted_invoice_url.inspect}, will_auto_issue: #{@will_auto_issue.inspect},"\
833
+ " eligible_to_issue_at: #{@eligible_to_issue_at.inspect}, customer_tax_id:"\
834
+ " #{@customer_tax_id.inspect}, memo: #{@memo.inspect}, credit_notes:"\
835
+ " #{@credit_notes.inspect}, payment_attempts: #{@payment_attempts.inspect}, discount:"\
836
+ " #{@discount.inspect}, discounts: #{@discounts.inspect}, minimum: #{@minimum.inspect},"\
837
+ " minimum_amount: #{@minimum_amount.inspect}, maximum: #{@maximum.inspect}, maximum_amount:"\
838
+ " #{@maximum_amount.inspect}, line_items: #{@line_items.inspect}, subtotal:"\
839
+ " #{@subtotal.inspect}, invoice_date: #{@invoice_date.inspect}, additional_properties:"\
840
+ " #{@additional_properties}>"
841
+ end
842
+ end
843
+ end