orb-billing 0.1.0.pre.alpha.37 → 0.1.0.pre.alpha.39
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.
- checksums.yaml +4 -4
- data/README.md +29 -5
- data/lib/orb/client.rb +4 -0
- data/lib/orb/internal/page.rb +6 -2
- data/lib/orb/internal/transport/base_client.rb +3 -3
- data/lib/orb/internal/transport/pooled_net_requester.rb +2 -2
- data/lib/orb/internal/type/array_of.rb +5 -3
- data/lib/orb/internal/type/base_model.rb +19 -16
- data/lib/orb/internal/type/base_page.rb +4 -1
- data/lib/orb/internal/type/{boolean_model.rb → boolean.rb} +2 -2
- data/lib/orb/internal/type/converter.rb +26 -23
- data/lib/orb/internal/type/enum.rb +10 -8
- data/lib/orb/internal/type/hash_of.rb +3 -1
- data/lib/orb/internal/util.rb +29 -50
- data/lib/orb/models/alert.rb +10 -10
- data/lib/orb/models/alert_create_for_customer_params.rb +3 -3
- data/lib/orb/models/alert_create_for_external_customer_params.rb +3 -3
- data/lib/orb/models/alert_create_for_subscription_params.rb +3 -3
- data/lib/orb/models/alert_list_params.rb +5 -5
- data/lib/orb/models/alert_update_params.rb +3 -3
- data/lib/orb/models/amount_discount.rb +1 -1
- data/lib/orb/models/billable_metric.rb +7 -7
- data/lib/orb/models/coupon.rb +7 -7
- data/lib/orb/models/coupon_create_params.rb +2 -2
- data/lib/orb/models/coupon_list_params.rb +3 -3
- data/lib/orb/models/coupons/subscription_list_params.rb +1 -1
- data/lib/orb/models/credit_note.rb +1 -1
- data/lib/orb/models/credit_note_list_params.rb +5 -5
- data/lib/orb/models/customer.rb +237 -237
- data/lib/orb/models/customer_create_params.rb +229 -229
- data/lib/orb/models/customer_list_params.rb +5 -5
- data/lib/orb/models/customer_update_by_external_id_params.rb +230 -230
- data/lib/orb/models/customer_update_params.rb +230 -230
- data/lib/orb/models/customers/balance_transaction_create_response.rb +2 -2
- data/lib/orb/models/customers/balance_transaction_list_params.rb +5 -5
- data/lib/orb/models/customers/balance_transaction_list_response.rb +2 -2
- data/lib/orb/models/customers/cost_list_by_external_id_params.rb +6 -6
- data/lib/orb/models/customers/cost_list_params.rb +6 -6
- data/lib/orb/models/customers/credit_list_by_external_id_params.rb +3 -3
- data/lib/orb/models/customers/credit_list_params.rb +3 -3
- data/lib/orb/models/customers/credits/ledger_create_entry_by_external_id_params.rb +22 -22
- data/lib/orb/models/customers/credits/ledger_create_entry_by_external_id_response.rb +22 -22
- data/lib/orb/models/customers/credits/ledger_create_entry_params.rb +22 -22
- data/lib/orb/models/customers/credits/ledger_create_entry_response.rb +22 -22
- data/lib/orb/models/customers/credits/ledger_list_by_external_id_params.rb +5 -5
- data/lib/orb/models/customers/credits/ledger_list_by_external_id_response.rb +22 -22
- data/lib/orb/models/customers/credits/ledger_list_params.rb +5 -5
- data/lib/orb/models/customers/credits/ledger_list_response.rb +22 -22
- data/lib/orb/models/customers/credits/top_up_create_by_external_id_params.rb +10 -10
- data/lib/orb/models/customers/credits/top_up_create_by_external_id_response.rb +9 -9
- data/lib/orb/models/customers/credits/top_up_create_params.rb +10 -10
- data/lib/orb/models/customers/credits/top_up_create_response.rb +9 -9
- data/lib/orb/models/customers/credits/top_up_list_by_external_id_params.rb +1 -1
- data/lib/orb/models/customers/credits/top_up_list_by_external_id_response.rb +9 -9
- data/lib/orb/models/customers/credits/top_up_list_params.rb +1 -1
- data/lib/orb/models/customers/credits/top_up_list_response.rb +9 -9
- data/lib/orb/models/dimensional_price_group.rb +7 -7
- data/lib/orb/models/dimensional_price_group_create_params.rb +2 -2
- data/lib/orb/models/dimensional_price_group_list_params.rb +1 -1
- data/lib/orb/models/evaluate_price_group.rb +1 -1
- data/lib/orb/models/event_ingest_params.rb +8 -8
- data/lib/orb/models/event_ingest_response.rb +4 -4
- data/lib/orb/models/event_search_params.rb +5 -5
- data/lib/orb/models/event_search_response.rb +9 -9
- data/lib/orb/models/event_update_params.rb +4 -4
- data/lib/orb/models/events/backfill_close_response.rb +8 -8
- data/lib/orb/models/events/backfill_create_params.rb +12 -12
- data/lib/orb/models/events/backfill_create_response.rb +8 -8
- data/lib/orb/models/events/backfill_fetch_response.rb +8 -8
- data/lib/orb/models/events/backfill_list_params.rb +1 -1
- data/lib/orb/models/events/backfill_list_response.rb +8 -8
- data/lib/orb/models/events/backfill_revert_response.rb +8 -8
- data/lib/orb/models/events/event_volumes.rb +1 -1
- data/lib/orb/models/events/volume_list_params.rb +7 -7
- data/lib/orb/models/invoice.rb +278 -278
- data/lib/orb/models/invoice_create_params.rb +13 -12
- data/lib/orb/models/invoice_fetch_upcoming_response.rb +274 -274
- data/lib/orb/models/invoice_issue_params.rb +5 -5
- data/lib/orb/models/invoice_line_item_create_params.rb +1 -1
- data/lib/orb/models/invoice_line_item_create_response.rb +32 -32
- data/lib/orb/models/invoice_list_params.rb +13 -13
- data/lib/orb/models/invoice_update_params.rb +2 -2
- data/lib/orb/models/item.rb +2 -2
- data/lib/orb/models/item_list_params.rb +1 -1
- data/lib/orb/models/metric_create_params.rb +2 -2
- data/lib/orb/models/metric_list_params.rb +5 -5
- data/lib/orb/models/metric_update_params.rb +2 -2
- data/lib/orb/models/pagination_metadata.rb +1 -1
- data/lib/orb/models/percentage_discount.rb +2 -2
- data/lib/orb/models/plan.rb +40 -40
- data/lib/orb/models/plan_create_params.rb +292 -292
- data/lib/orb/models/plan_list_params.rb +5 -5
- data/lib/orb/models/plan_update_params.rb +4 -4
- data/lib/orb/models/plans/external_plan_id_update_params.rb +4 -4
- data/lib/orb/models/price.rb +186 -186
- data/lib/orb/models/price_create_params.rb +21 -21
- data/lib/orb/models/price_evaluate_params.rb +4 -4
- data/lib/orb/models/price_list_params.rb +1 -1
- data/lib/orb/models/price_update_params.rb +2 -2
- data/lib/orb/models/prices/external_price_id_update_params.rb +2 -2
- data/lib/orb/models/subscription.rb +120 -93
- data/lib/orb/models/subscription_cancel_params.rb +4 -4
- data/lib/orb/models/subscription_cancel_response.rb +156 -78
- data/lib/orb/models/subscription_change_apply_params.rb +33 -0
- data/lib/orb/models/subscription_change_apply_response.rb +1372 -0
- data/lib/orb/models/subscription_change_cancel_params.rb +19 -0
- data/lib/orb/models/subscription_change_cancel_response.rb +1372 -0
- data/lib/orb/models/subscription_change_retrieve_params.rb +19 -0
- data/lib/orb/models/subscription_change_retrieve_response.rb +1372 -0
- data/lib/orb/models/subscription_create_params.rb +705 -705
- data/lib/orb/models/subscription_create_response.rb +156 -78
- data/lib/orb/models/subscription_fetch_costs_params.rb +6 -6
- data/lib/orb/models/subscription_fetch_schedule_params.rb +5 -5
- data/lib/orb/models/subscription_fetch_schedule_response.rb +2 -2
- data/lib/orb/models/subscription_fetch_usage_params.rb +8 -8
- data/lib/orb/models/subscription_list_params.rb +5 -5
- data/lib/orb/models/subscription_price_intervals_params.rb +358 -358
- data/lib/orb/models/subscription_price_intervals_response.rb +158 -78
- data/lib/orb/models/subscription_schedule_plan_change_params.rb +715 -715
- data/lib/orb/models/subscription_schedule_plan_change_response.rb +158 -78
- data/lib/orb/models/subscription_trigger_phase_params.rb +4 -4
- data/lib/orb/models/subscription_trigger_phase_response.rb +158 -78
- data/lib/orb/models/subscription_unschedule_cancellation_response.rb +158 -78
- data/lib/orb/models/subscription_unschedule_fixed_fee_quantity_updates_response.rb +159 -79
- data/lib/orb/models/subscription_unschedule_pending_plan_changes_response.rb +158 -78
- data/lib/orb/models/subscription_update_fixed_fee_quantity_params.rb +9 -9
- data/lib/orb/models/subscription_update_fixed_fee_quantity_response.rb +158 -78
- data/lib/orb/models/subscription_update_params.rb +11 -11
- data/lib/orb/models/subscription_update_trial_params.rb +4 -4
- data/lib/orb/models/subscription_update_trial_response.rb +158 -78
- data/lib/orb/models/trial_discount.rb +1 -1
- data/lib/orb/models/usage_discount.rb +2 -2
- data/lib/orb/request_options.rb +7 -7
- data/lib/orb/resources/alerts.rb +40 -35
- data/lib/orb/resources/coupons/subscriptions.rb +3 -3
- data/lib/orb/resources/coupons.rb +9 -9
- data/lib/orb/resources/credit_notes.rb +10 -5
- data/lib/orb/resources/customers/balance_transactions.rb +28 -23
- data/lib/orb/resources/customers/costs.rb +232 -232
- data/lib/orb/resources/customers/credits/ledger.rb +348 -338
- data/lib/orb/resources/customers/credits/top_ups.rb +12 -12
- data/lib/orb/resources/customers/credits.rb +8 -8
- data/lib/orb/resources/customers.rb +61 -56
- data/lib/orb/resources/dimensional_price_groups.rb +6 -6
- data/lib/orb/resources/events/backfills.rb +49 -49
- data/lib/orb/resources/events/volume.rb +10 -10
- data/lib/orb/resources/events.rb +295 -295
- data/lib/orb/resources/invoice_line_items.rb +1 -1
- data/lib/orb/resources/invoices.rb +40 -31
- data/lib/orb/resources/items.rb +1 -1
- data/lib/orb/resources/metrics.rb +13 -8
- data/lib/orb/resources/plans/external_plan_id.rb +14 -14
- data/lib/orb/resources/plans.rb +24 -19
- data/lib/orb/resources/prices/external_price_id.rb +4 -4
- data/lib/orb/resources/prices.rb +30 -30
- data/lib/orb/resources/subscription_changes.rb +87 -0
- data/lib/orb/resources/subscriptions.rb +817 -807
- data/lib/orb/resources/top_level.rb +4 -4
- data/lib/orb/version.rb +1 -1
- data/lib/orb.rb +8 -1
- data/rbi/lib/orb/client.rbi +5 -4
- data/rbi/lib/orb/errors.rbi +3 -6
- data/rbi/lib/orb/internal/page.rbi +3 -6
- data/rbi/lib/orb/internal/transport/base_client.rbi +13 -27
- data/rbi/lib/orb/internal/transport/pooled_net_requester.rbi +7 -13
- data/rbi/lib/orb/internal/type/array_of.rbi +10 -18
- data/rbi/lib/orb/internal/type/base_model.rbi +45 -64
- data/rbi/lib/orb/internal/type/base_page.rbi +5 -10
- data/rbi/lib/orb/internal/type/{boolean_model.rbi → boolean.rbi} +5 -9
- data/rbi/lib/orb/internal/type/converter.rbi +25 -31
- data/rbi/lib/orb/internal/type/enum.rbi +14 -20
- data/rbi/lib/orb/internal/type/hash_of.rbi +8 -16
- data/rbi/lib/orb/internal/type/request_parameters.rbi +1 -2
- data/rbi/lib/orb/internal/type/union.rbi +10 -20
- data/rbi/lib/orb/internal/type/unknown.rbi +4 -8
- data/rbi/lib/orb/internal/util.rbi +40 -72
- data/rbi/lib/orb/internal.rbi +1 -1
- data/rbi/lib/orb/models/alert.rbi +21 -33
- data/rbi/lib/orb/models/alert_create_for_customer_params.rbi +8 -13
- data/rbi/lib/orb/models/alert_create_for_external_customer_params.rbi +8 -13
- data/rbi/lib/orb/models/alert_create_for_subscription_params.rbi +8 -13
- data/rbi/lib/orb/models/alert_disable_params.rbi +2 -4
- data/rbi/lib/orb/models/alert_enable_params.rbi +2 -4
- data/rbi/lib/orb/models/alert_list_params.rbi +3 -6
- data/rbi/lib/orb/models/alert_retrieve_params.rbi +2 -4
- data/rbi/lib/orb/models/alert_update_params.rbi +7 -11
- data/rbi/lib/orb/models/amount_discount.rbi +4 -7
- data/rbi/lib/orb/models/billable_metric.rbi +10 -13
- data/rbi/lib/orb/models/billing_cycle_relative_date.rbi +1 -2
- data/rbi/lib/orb/models/coupon.rbi +9 -11
- data/rbi/lib/orb/models/coupon_archive_params.rbi +2 -4
- data/rbi/lib/orb/models/coupon_create_params.rbi +8 -14
- data/rbi/lib/orb/models/coupon_fetch_params.rbi +2 -4
- data/rbi/lib/orb/models/coupon_list_params.rbi +3 -4
- data/rbi/lib/orb/models/coupons/subscription_list_params.rbi +3 -5
- data/rbi/lib/orb/models/credit_note.rbi +22 -45
- data/rbi/lib/orb/models/credit_note_create_params.rbi +5 -10
- data/rbi/lib/orb/models/credit_note_fetch_params.rbi +2 -4
- data/rbi/lib/orb/models/credit_note_list_params.rbi +3 -6
- data/rbi/lib/orb/models/customer.rbi +256 -281
- data/rbi/lib/orb/models/customer_create_params.rbi +251 -276
- data/rbi/lib/orb/models/customer_delete_params.rbi +2 -4
- data/rbi/lib/orb/models/customer_fetch_by_external_id_params.rbi +2 -4
- data/rbi/lib/orb/models/customer_fetch_params.rbi +2 -4
- data/rbi/lib/orb/models/customer_list_params.rbi +3 -6
- data/rbi/lib/orb/models/customer_sync_payment_methods_from_gateway_by_external_customer_id_params.rbi +2 -4
- data/rbi/lib/orb/models/customer_sync_payment_methods_from_gateway_params.rbi +2 -4
- data/rbi/lib/orb/models/customer_update_by_external_id_params.rbi +252 -277
- data/rbi/lib/orb/models/customer_update_params.rbi +252 -277
- data/rbi/lib/orb/models/customers/balance_transaction_create_params.rbi +3 -6
- data/rbi/lib/orb/models/customers/balance_transaction_create_response.rbi +10 -19
- data/rbi/lib/orb/models/customers/balance_transaction_list_params.rbi +3 -6
- data/rbi/lib/orb/models/customers/balance_transaction_list_response.rbi +10 -19
- data/rbi/lib/orb/models/customers/cost_list_by_external_id_params.rbi +8 -10
- data/rbi/lib/orb/models/customers/cost_list_by_external_id_response.rbi +6 -12
- data/rbi/lib/orb/models/customers/cost_list_params.rbi +8 -10
- data/rbi/lib/orb/models/customers/cost_list_response.rbi +6 -12
- data/rbi/lib/orb/models/customers/credit_list_by_external_id_params.rbi +3 -4
- data/rbi/lib/orb/models/customers/credit_list_by_external_id_response.rbi +2 -4
- data/rbi/lib/orb/models/customers/credit_list_params.rbi +3 -4
- data/rbi/lib/orb/models/customers/credit_list_response.rbi +2 -4
- data/rbi/lib/orb/models/customers/credits/ledger_create_entry_by_external_id_params.rbi +26 -33
- data/rbi/lib/orb/models/customers/credits/ledger_create_entry_by_external_id_response.rbi +79 -136
- data/rbi/lib/orb/models/customers/credits/ledger_create_entry_params.rbi +26 -33
- data/rbi/lib/orb/models/customers/credits/ledger_create_entry_response.rbi +78 -135
- data/rbi/lib/orb/models/customers/credits/ledger_list_by_external_id_params.rbi +5 -10
- data/rbi/lib/orb/models/customers/credits/ledger_list_by_external_id_response.rbi +79 -136
- data/rbi/lib/orb/models/customers/credits/ledger_list_params.rbi +5 -10
- data/rbi/lib/orb/models/customers/credits/ledger_list_response.rbi +74 -131
- data/rbi/lib/orb/models/customers/credits/top_up_create_by_external_id_params.rbi +13 -19
- data/rbi/lib/orb/models/customers/credits/top_up_create_by_external_id_response.rbi +12 -18
- data/rbi/lib/orb/models/customers/credits/top_up_create_params.rbi +13 -19
- data/rbi/lib/orb/models/customers/credits/top_up_create_response.rbi +12 -18
- data/rbi/lib/orb/models/customers/credits/top_up_delete_by_external_id_params.rbi +2 -4
- data/rbi/lib/orb/models/customers/credits/top_up_delete_params.rbi +2 -4
- data/rbi/lib/orb/models/customers/credits/top_up_list_by_external_id_params.rbi +3 -5
- data/rbi/lib/orb/models/customers/credits/top_up_list_by_external_id_response.rbi +12 -18
- data/rbi/lib/orb/models/customers/credits/top_up_list_params.rbi +3 -5
- data/rbi/lib/orb/models/customers/credits/top_up_list_response.rbi +12 -18
- data/rbi/lib/orb/models/dimensional_price_group.rbi +8 -9
- data/rbi/lib/orb/models/dimensional_price_group_create_params.rbi +4 -7
- data/rbi/lib/orb/models/dimensional_price_group_list_params.rbi +3 -5
- data/rbi/lib/orb/models/dimensional_price_group_retrieve_params.rbi +2 -4
- data/rbi/lib/orb/models/dimensional_price_groups/external_dimensional_price_group_id_retrieve_params.rbi +2 -4
- data/rbi/lib/orb/models/dimensional_price_groups.rbi +2 -4
- data/rbi/lib/orb/models/discount.rbi +1 -2
- data/rbi/lib/orb/models/evaluate_price_group.rbi +3 -6
- data/rbi/lib/orb/models/event_deprecate_params.rbi +2 -4
- data/rbi/lib/orb/models/event_deprecate_response.rbi +2 -4
- data/rbi/lib/orb/models/event_ingest_params.rbi +10 -13
- data/rbi/lib/orb/models/event_ingest_response.rbi +10 -16
- data/rbi/lib/orb/models/event_search_params.rbi +7 -9
- data/rbi/lib/orb/models/event_search_response.rbi +11 -14
- data/rbi/lib/orb/models/event_update_params.rbi +5 -6
- data/rbi/lib/orb/models/event_update_response.rbi +2 -4
- data/rbi/lib/orb/models/events/backfill_close_params.rbi +2 -4
- data/rbi/lib/orb/models/events/backfill_close_response.rbi +10 -14
- data/rbi/lib/orb/models/events/backfill_create_params.rbi +13 -16
- data/rbi/lib/orb/models/events/backfill_create_response.rbi +10 -14
- data/rbi/lib/orb/models/events/backfill_fetch_params.rbi +2 -4
- data/rbi/lib/orb/models/events/backfill_fetch_response.rbi +10 -14
- data/rbi/lib/orb/models/events/backfill_list_params.rbi +3 -5
- data/rbi/lib/orb/models/events/backfill_list_response.rbi +10 -14
- data/rbi/lib/orb/models/events/backfill_revert_params.rbi +2 -4
- data/rbi/lib/orb/models/events/backfill_revert_response.rbi +10 -14
- data/rbi/lib/orb/models/events/event_volumes.rbi +5 -9
- data/rbi/lib/orb/models/events/volume_list_params.rbi +9 -11
- data/rbi/lib/orb/models/invoice.rbi +388 -465
- data/rbi/lib/orb/models/invoice_create_params.rbi +19 -26
- data/rbi/lib/orb/models/invoice_fetch_params.rbi +2 -4
- data/rbi/lib/orb/models/invoice_fetch_upcoming_params.rbi +2 -4
- data/rbi/lib/orb/models/invoice_fetch_upcoming_response.rbi +381 -460
- data/rbi/lib/orb/models/invoice_issue_params.rbi +6 -8
- data/rbi/lib/orb/models/invoice_level_discount.rbi +1 -2
- data/rbi/lib/orb/models/invoice_line_item_create_params.rbi +3 -5
- data/rbi/lib/orb/models/invoice_line_item_create_response.rbi +101 -143
- data/rbi/lib/orb/models/invoice_list_params.rbi +8 -13
- data/rbi/lib/orb/models/invoice_mark_paid_params.rbi +2 -4
- data/rbi/lib/orb/models/invoice_pay_params.rbi +2 -4
- data/rbi/lib/orb/models/invoice_update_params.rbi +4 -6
- data/rbi/lib/orb/models/invoice_void_params.rbi +2 -4
- data/rbi/lib/orb/models/item.rbi +7 -12
- data/rbi/lib/orb/models/item_create_params.rbi +2 -4
- data/rbi/lib/orb/models/item_fetch_params.rbi +2 -4
- data/rbi/lib/orb/models/item_list_params.rbi +3 -5
- data/rbi/lib/orb/models/item_update_params.rbi +5 -10
- data/rbi/lib/orb/models/metric_create_params.rbi +4 -6
- data/rbi/lib/orb/models/metric_fetch_params.rbi +2 -4
- data/rbi/lib/orb/models/metric_list_params.rbi +3 -6
- data/rbi/lib/orb/models/metric_update_params.rbi +4 -6
- data/rbi/lib/orb/models/pagination_metadata.rbi +2 -4
- data/rbi/lib/orb/models/percentage_discount.rbi +5 -8
- data/rbi/lib/orb/models/plan.rbi +180 -219
- data/rbi/lib/orb/models/plan_create_params.rbi +670 -951
- data/rbi/lib/orb/models/plan_fetch_params.rbi +2 -4
- data/rbi/lib/orb/models/plan_list_params.rbi +4 -8
- data/rbi/lib/orb/models/plan_update_params.rbi +6 -8
- data/rbi/lib/orb/models/plans/external_plan_id_fetch_params.rbi +2 -4
- data/rbi/lib/orb/models/plans/external_plan_id_update_params.rbi +6 -8
- data/rbi/lib/orb/models/price.rbi +827 -1494
- data/rbi/lib/orb/models/price_create_params.rbi +60 -101
- data/rbi/lib/orb/models/price_evaluate_params.rbi +6 -9
- data/rbi/lib/orb/models/price_evaluate_response.rbi +2 -4
- data/rbi/lib/orb/models/price_fetch_params.rbi +2 -4
- data/rbi/lib/orb/models/price_list_params.rbi +3 -5
- data/rbi/lib/orb/models/price_update_params.rbi +4 -6
- data/rbi/lib/orb/models/prices/external_price_id_fetch_params.rbi +2 -4
- data/rbi/lib/orb/models/prices/external_price_id_update_params.rbi +4 -6
- data/rbi/lib/orb/models/subscription.rbi +167 -187
- data/rbi/lib/orb/models/subscription_cancel_params.rbi +5 -7
- data/rbi/lib/orb/models/subscription_cancel_response.rbi +224 -178
- data/rbi/lib/orb/models/subscription_change_apply_params.rbi +40 -0
- data/rbi/lib/orb/models/subscription_change_apply_response.rbi +1554 -0
- data/rbi/lib/orb/models/subscription_change_cancel_params.rbi +18 -0
- data/rbi/lib/orb/models/subscription_change_cancel_response.rbi +1565 -0
- data/rbi/lib/orb/models/subscription_change_retrieve_params.rbi +18 -0
- data/rbi/lib/orb/models/subscription_change_retrieve_response.rbi +1581 -0
- data/rbi/lib/orb/models/subscription_create_params.rbi +1372 -1968
- data/rbi/lib/orb/models/subscription_create_response.rbi +224 -178
- data/rbi/lib/orb/models/subscription_fetch_costs_params.rbi +8 -10
- data/rbi/lib/orb/models/subscription_fetch_costs_response.rbi +6 -12
- data/rbi/lib/orb/models/subscription_fetch_params.rbi +2 -4
- data/rbi/lib/orb/models/subscription_fetch_schedule_params.rbi +3 -6
- data/rbi/lib/orb/models/subscription_fetch_schedule_response.rbi +6 -10
- data/rbi/lib/orb/models/subscription_fetch_usage_params.rbi +12 -17
- data/rbi/lib/orb/models/subscription_list_params.rbi +4 -8
- data/rbi/lib/orb/models/subscription_price_intervals_params.rbi +772 -1124
- data/rbi/lib/orb/models/subscription_price_intervals_response.rbi +228 -178
- data/rbi/lib/orb/models/subscription_schedule_plan_change_params.rbi +1396 -1993
- data/rbi/lib/orb/models/subscription_schedule_plan_change_response.rbi +238 -182
- data/rbi/lib/orb/models/subscription_trigger_phase_params.rbi +5 -7
- data/rbi/lib/orb/models/subscription_trigger_phase_response.rbi +224 -178
- data/rbi/lib/orb/models/subscription_unschedule_cancellation_params.rbi +2 -4
- data/rbi/lib/orb/models/subscription_unschedule_cancellation_response.rbi +238 -182
- data/rbi/lib/orb/models/subscription_unschedule_fixed_fee_quantity_updates_params.rbi +2 -4
- data/rbi/lib/orb/models/subscription_unschedule_fixed_fee_quantity_updates_response.rbi +265 -199
- data/rbi/lib/orb/models/subscription_unschedule_pending_plan_changes_params.rbi +2 -4
- data/rbi/lib/orb/models/subscription_unschedule_pending_plan_changes_response.rbi +264 -198
- data/rbi/lib/orb/models/subscription_update_fixed_fee_quantity_params.rbi +11 -15
- data/rbi/lib/orb/models/subscription_update_fixed_fee_quantity_response.rbi +238 -182
- data/rbi/lib/orb/models/subscription_update_params.rbi +12 -15
- data/rbi/lib/orb/models/subscription_update_trial_params.rbi +6 -9
- data/rbi/lib/orb/models/subscription_update_trial_response.rbi +224 -178
- data/rbi/lib/orb/models/subscription_usage.rbi +24 -43
- data/rbi/lib/orb/models/subscriptions.rbi +2 -4
- data/rbi/lib/orb/models/top_level_ping_params.rbi +2 -4
- data/rbi/lib/orb/models/top_level_ping_response.rbi +2 -4
- data/rbi/lib/orb/models/trial_discount.rbi +4 -8
- data/rbi/lib/orb/models/usage_discount.rbi +5 -8
- data/rbi/lib/orb/request_options.rbi +9 -11
- data/rbi/lib/orb/resources/alerts.rbi +44 -60
- data/rbi/lib/orb/resources/coupons/subscriptions.rbi +6 -9
- data/rbi/lib/orb/resources/coupons.rbi +18 -25
- data/rbi/lib/orb/resources/credit_notes.rbi +9 -15
- data/rbi/lib/orb/resources/customers/balance_transactions.rbi +26 -31
- data/rbi/lib/orb/resources/customers/costs.rbi +241 -246
- data/rbi/lib/orb/resources/customers/credits/ledger.rbi +387 -396
- data/rbi/lib/orb/resources/customers/credits/top_ups.rbi +29 -40
- data/rbi/lib/orb/resources/customers/credits.rbi +15 -20
- data/rbi/lib/orb/resources/customers.rbi +407 -417
- data/rbi/lib/orb/resources/dimensional_price_groups/external_dimensional_price_group_id.rbi +2 -4
- data/rbi/lib/orb/resources/dimensional_price_groups.rbi +13 -19
- data/rbi/lib/orb/resources/events/backfills.rbi +61 -69
- data/rbi/lib/orb/resources/events/volume.rbi +19 -22
- data/rbi/lib/orb/resources/events.rbi +311 -319
- data/rbi/lib/orb/resources/invoice_line_items.rbi +4 -7
- data/rbi/lib/orb/resources/invoices.rbi +62 -76
- data/rbi/lib/orb/resources/items.rbi +7 -14
- data/rbi/lib/orb/resources/metrics.rbi +17 -25
- data/rbi/lib/orb/resources/plans/external_plan_id.rbi +21 -25
- data/rbi/lib/orb/resources/plans.rbi +63 -71
- data/rbi/lib/orb/resources/prices/external_price_id.rbi +9 -13
- data/rbi/lib/orb/resources/prices.rbi +77 -87
- data/rbi/lib/orb/resources/subscription_changes.rbi +61 -0
- data/rbi/lib/orb/resources/subscriptions.rbi +933 -963
- data/rbi/lib/orb/resources/top_level.rbi +6 -8
- data/rbi/lib/orb/version.rbi +1 -1
- data/sig/orb/client.rbs +2 -0
- data/sig/orb/internal/type/array_of.rbs +2 -2
- data/sig/orb/internal/type/{boolean_model.rbs → boolean.rbs} +1 -1
- data/sig/orb/internal/util.rbs +5 -5
- data/sig/orb/models/subscription.rbs +14 -0
- data/sig/orb/models/subscription_cancel_response.rbs +47 -2
- data/sig/orb/models/subscription_change_apply_params.rbs +24 -0
- data/sig/orb/models/subscription_change_apply_response.rbs +784 -0
- data/sig/orb/models/subscription_change_cancel_params.rbs +15 -0
- data/sig/orb/models/subscription_change_cancel_response.rbs +784 -0
- data/sig/orb/models/subscription_change_retrieve_params.rbs +15 -0
- data/sig/orb/models/subscription_change_retrieve_response.rbs +784 -0
- data/sig/orb/models/subscription_create_response.rbs +47 -2
- data/sig/orb/models/subscription_price_intervals_response.rbs +47 -2
- data/sig/orb/models/subscription_schedule_plan_change_response.rbs +47 -2
- data/sig/orb/models/subscription_trigger_phase_response.rbs +47 -2
- data/sig/orb/models/subscription_unschedule_cancellation_response.rbs +47 -2
- data/sig/orb/models/subscription_unschedule_fixed_fee_quantity_updates_response.rbs +47 -2
- data/sig/orb/models/subscription_unschedule_pending_plan_changes_response.rbs +47 -2
- data/sig/orb/models/subscription_update_fixed_fee_quantity_response.rbs +47 -2
- data/sig/orb/models/subscription_update_trial_response.rbs +47 -2
- data/sig/orb/resources/customers.rbs +2 -2
- data/sig/orb/resources/subscription_changes.rbs +24 -0
- data/sig/orb/version.rbs +1 -1
- metadata +26 -5
@@ -34,10 +34,10 @@ module Orb
|
|
34
34
|
end
|
35
35
|
|
36
36
|
# This endpoint allows you to update the `metadata` property on an invoice. If you
|
37
|
-
#
|
38
|
-
#
|
37
|
+
# pass null for the metadata value, it will clear any existing metadata for that
|
38
|
+
# invoice.
|
39
39
|
#
|
40
|
-
#
|
40
|
+
# `metadata` can be modified regardless of invoice state.
|
41
41
|
#
|
42
42
|
# @overload update(invoice_id, metadata: nil, request_options: {})
|
43
43
|
#
|
@@ -60,18 +60,18 @@ module Orb
|
|
60
60
|
end
|
61
61
|
|
62
62
|
# This endpoint returns a list of all [`Invoice`](/core-concepts#invoice)s for an
|
63
|
-
#
|
63
|
+
# account in a list format.
|
64
64
|
#
|
65
|
-
#
|
66
|
-
#
|
67
|
-
#
|
68
|
-
#
|
65
|
+
# The list of invoices is ordered starting from the most recently issued invoice
|
66
|
+
# date. The response also includes
|
67
|
+
# [`pagination_metadata`](/api-reference/pagination), which lets the caller
|
68
|
+
# retrieve the next page of results if they exist.
|
69
69
|
#
|
70
|
-
#
|
70
|
+
# By default, this only returns invoices that are `issued`, `paid`, or `synced`.
|
71
71
|
#
|
72
|
-
#
|
73
|
-
#
|
74
|
-
#
|
72
|
+
# When fetching any `draft` invoices, this returns the last-computed invoice
|
73
|
+
# values for each draft invoice, which may not always be up-to-date since Orb
|
74
|
+
# regularly refreshes invoices asynchronously.
|
75
75
|
#
|
76
76
|
# @overload list(amount: nil, amount_gt: nil, amount_lt: nil, cursor: nil, customer_id: nil, date_type: nil, due_date: nil, due_date_window: nil, due_date_gt: nil, due_date_lt: nil, external_customer_id: nil, invoice_date_gt: nil, invoice_date_gte: nil, invoice_date_lt: nil, invoice_date_lte: nil, is_recurring: nil, limit: nil, status: nil, subscription_id: nil, request_options: {})
|
77
77
|
#
|
@@ -104,7 +104,16 @@ module Orb
|
|
104
104
|
@client.request(
|
105
105
|
method: :get,
|
106
106
|
path: "invoices",
|
107
|
-
query: parsed
|
107
|
+
query: parsed.transform_keys(
|
108
|
+
amount_gt: "amount[gt]",
|
109
|
+
amount_lt: "amount[lt]",
|
110
|
+
due_date_gt: "due_date[gt]",
|
111
|
+
due_date_lt: "due_date[lt]",
|
112
|
+
invoice_date_gt: "invoice_date[gt]",
|
113
|
+
invoice_date_gte: "invoice_date[gte]",
|
114
|
+
invoice_date_lt: "invoice_date[lt]",
|
115
|
+
invoice_date_lte: "invoice_date[lte]"
|
116
|
+
),
|
108
117
|
page: Orb::Internal::Page,
|
109
118
|
model: Orb::Models::Invoice,
|
110
119
|
options: options
|
@@ -112,7 +121,7 @@ module Orb
|
|
112
121
|
end
|
113
122
|
|
114
123
|
# This endpoint is used to fetch an [`Invoice`](/core-concepts#invoice) given an
|
115
|
-
#
|
124
|
+
# identifier.
|
116
125
|
#
|
117
126
|
# @overload fetch(invoice_id, request_options: {})
|
118
127
|
#
|
@@ -132,8 +141,8 @@ module Orb
|
|
132
141
|
end
|
133
142
|
|
134
143
|
# This endpoint can be used to fetch the upcoming
|
135
|
-
#
|
136
|
-
#
|
144
|
+
# [invoice](/core-concepts#invoice) for the current billing period given a
|
145
|
+
# subscription.
|
137
146
|
#
|
138
147
|
# @overload fetch_upcoming(subscription_id:, request_options: {})
|
139
148
|
#
|
@@ -155,11 +164,11 @@ module Orb
|
|
155
164
|
end
|
156
165
|
|
157
166
|
# This endpoint allows an eligible invoice to be issued manually. This is only
|
158
|
-
#
|
159
|
-
#
|
160
|
-
#
|
161
|
-
#
|
162
|
-
#
|
167
|
+
# possible with invoices where status is `draft`, `will_auto_issue` is false, and
|
168
|
+
# an `eligible_to_issue_at` is a time in the past. Issuing an invoice could
|
169
|
+
# possibly trigger side effects, some of which could be customer-visible (e.g.
|
170
|
+
# sending emails, auto-collecting payment, syncing the invoice to external
|
171
|
+
# providers, etc).
|
163
172
|
#
|
164
173
|
# @overload issue(invoice_id, synchronous: nil, request_options: {})
|
165
174
|
#
|
@@ -182,7 +191,7 @@ module Orb
|
|
182
191
|
end
|
183
192
|
|
184
193
|
# This endpoint allows an invoice's status to be set the `paid` status. This can
|
185
|
-
#
|
194
|
+
# only be done to invoices that are in the `issued` status.
|
186
195
|
#
|
187
196
|
# @overload mark_paid(invoice_id, payment_received_date:, external_id: nil, notes: nil, request_options: {})
|
188
197
|
#
|
@@ -207,7 +216,7 @@ module Orb
|
|
207
216
|
end
|
208
217
|
|
209
218
|
# This endpoint collects payment for an invoice using the customer's default
|
210
|
-
#
|
219
|
+
# payment method. This action can only be taken on invoices with status "issued".
|
211
220
|
#
|
212
221
|
# @overload pay(invoice_id, request_options: {})
|
213
222
|
#
|
@@ -227,16 +236,16 @@ module Orb
|
|
227
236
|
end
|
228
237
|
|
229
238
|
# This endpoint allows an invoice's status to be set the `void` status. This can
|
230
|
-
#
|
239
|
+
# only be done to invoices that are in the `issued` status.
|
231
240
|
#
|
232
|
-
#
|
233
|
-
#
|
234
|
-
#
|
235
|
-
#
|
241
|
+
# If the associated invoice has used the customer balance to change the amount
|
242
|
+
# due, the customer balance operation will be reverted. For example, if the
|
243
|
+
# invoice used $10 of customer balance, that amount will be added back to the
|
244
|
+
# customer balance upon voiding.
|
236
245
|
#
|
237
|
-
#
|
238
|
-
#
|
239
|
-
#
|
246
|
+
# If the invoice was used to purchase a credit block, but the invoice is not yet
|
247
|
+
# paid, the credit block will be voided. If the invoice was created due to a
|
248
|
+
# top-up, the top-up will be disabled.
|
240
249
|
#
|
241
250
|
# @overload void(invoice_id, request_options: {})
|
242
251
|
#
|
data/lib/orb/resources/items.rb
CHANGED
@@ -4,8 +4,8 @@ module Orb
|
|
4
4
|
module Resources
|
5
5
|
class Metrics
|
6
6
|
# This endpoint is used to create a [metric](/core-concepts###metric) using a SQL
|
7
|
-
#
|
8
|
-
#
|
7
|
+
# string. See [SQL support](/extensibility/advanced-metrics#sql-support) for a
|
8
|
+
# description of constructing SQL queries with examples.
|
9
9
|
#
|
10
10
|
# @overload create(description:, item_id:, name:, sql:, metadata: nil, request_options: {})
|
11
11
|
#
|
@@ -31,8 +31,8 @@ module Orb
|
|
31
31
|
end
|
32
32
|
|
33
33
|
# This endpoint allows you to update the `metadata` property on a metric. If you
|
34
|
-
#
|
35
|
-
#
|
34
|
+
# pass `null` for the metadata value, it will clear any existing metadata for that
|
35
|
+
# invoice.
|
36
36
|
#
|
37
37
|
# @overload update(metric_id, metadata: nil, request_options: {})
|
38
38
|
#
|
@@ -55,8 +55,8 @@ module Orb
|
|
55
55
|
end
|
56
56
|
|
57
57
|
# This endpoint is used to fetch [metric](/core-concepts##metric) details given a
|
58
|
-
#
|
59
|
-
#
|
58
|
+
# metric identifier. It returns information about the metrics including its name,
|
59
|
+
# description, and item.
|
60
60
|
#
|
61
61
|
# @overload list(created_at_gt: nil, created_at_gte: nil, created_at_lt: nil, created_at_lte: nil, cursor: nil, limit: nil, request_options: {})
|
62
62
|
#
|
@@ -76,7 +76,12 @@ module Orb
|
|
76
76
|
@client.request(
|
77
77
|
method: :get,
|
78
78
|
path: "metrics",
|
79
|
-
query: parsed
|
79
|
+
query: parsed.transform_keys(
|
80
|
+
created_at_gt: "created_at[gt]",
|
81
|
+
created_at_gte: "created_at[gte]",
|
82
|
+
created_at_lt: "created_at[lt]",
|
83
|
+
created_at_lte: "created_at[lte]"
|
84
|
+
),
|
80
85
|
page: Orb::Internal::Page,
|
81
86
|
model: Orb::Models::BillableMetric,
|
82
87
|
options: options
|
@@ -84,7 +89,7 @@ module Orb
|
|
84
89
|
end
|
85
90
|
|
86
91
|
# This endpoint is used to list [metrics](/core-concepts#metric). It returns
|
87
|
-
#
|
92
|
+
# information about the metrics including its name, description, and item.
|
88
93
|
#
|
89
94
|
# @overload fetch(metric_id, request_options: {})
|
90
95
|
#
|
@@ -5,9 +5,9 @@ module Orb
|
|
5
5
|
class Plans
|
6
6
|
class ExternalPlanID
|
7
7
|
# This endpoint can be used to update the `external_plan_id`, and `metadata` of an
|
8
|
-
#
|
8
|
+
# existing plan.
|
9
9
|
#
|
10
|
-
#
|
10
|
+
# Other fields on a customer are currently immutable.
|
11
11
|
#
|
12
12
|
# @overload update(other_external_plan_id, external_plan_id: nil, metadata: nil, request_options: {})
|
13
13
|
#
|
@@ -31,21 +31,21 @@ module Orb
|
|
31
31
|
end
|
32
32
|
|
33
33
|
# This endpoint is used to fetch [plan](/core-concepts##plan-and-price) details
|
34
|
-
#
|
35
|
-
#
|
36
|
-
#
|
34
|
+
# given an external_plan_id identifier. It returns information about the prices
|
35
|
+
# included in the plan and their configuration, as well as the product that the
|
36
|
+
# plan is attached to.
|
37
37
|
#
|
38
|
-
#
|
39
|
-
#
|
40
|
-
#
|
38
|
+
# If multiple plans are found to contain the specified external_plan_id, the
|
39
|
+
# active plans will take priority over archived ones, and among those, the
|
40
|
+
# endpoint will return the most recently created plan.
|
41
41
|
#
|
42
|
-
#
|
42
|
+
# ## Serialized prices
|
43
43
|
#
|
44
|
-
#
|
45
|
-
#
|
46
|
-
#
|
47
|
-
#
|
48
|
-
#
|
44
|
+
# Orb supports a few different pricing models out of the box. Each of these models
|
45
|
+
# is serialized differently in a given [Price](/core-concepts#plan-and-price)
|
46
|
+
# object. The `model_type` field determines the key for the configuration object
|
47
|
+
# that is present. A detailed explanation of price types can be found in the
|
48
|
+
# [Price schema](/core-concepts#plan-and-price). "
|
49
49
|
#
|
50
50
|
# @overload fetch(external_plan_id, request_options: {})
|
51
51
|
#
|
data/lib/orb/resources/plans.rb
CHANGED
@@ -29,9 +29,9 @@ module Orb
|
|
29
29
|
end
|
30
30
|
|
31
31
|
# This endpoint can be used to update the `external_plan_id`, and `metadata` of an
|
32
|
-
#
|
32
|
+
# existing plan.
|
33
33
|
#
|
34
|
-
#
|
34
|
+
# Other fields on a customer are currently immutable.
|
35
35
|
#
|
36
36
|
# @overload update(plan_id, external_plan_id: nil, metadata: nil, request_options: {})
|
37
37
|
#
|
@@ -55,10 +55,10 @@ module Orb
|
|
55
55
|
end
|
56
56
|
|
57
57
|
# This endpoint returns a list of all [plans](/core-concepts#plan-and-price) for
|
58
|
-
#
|
59
|
-
#
|
60
|
-
#
|
61
|
-
#
|
58
|
+
# an account in a list format. The list of plans is ordered starting from the most
|
59
|
+
# recently created plan. The response also includes
|
60
|
+
# [`pagination_metadata`](/api-reference/pagination), which lets the caller
|
61
|
+
# retrieve the next page of results if they exist.
|
62
62
|
#
|
63
63
|
# @overload list(created_at_gt: nil, created_at_gte: nil, created_at_lt: nil, created_at_lte: nil, cursor: nil, limit: nil, status: nil, request_options: {})
|
64
64
|
#
|
@@ -79,7 +79,12 @@ module Orb
|
|
79
79
|
@client.request(
|
80
80
|
method: :get,
|
81
81
|
path: "plans",
|
82
|
-
query: parsed
|
82
|
+
query: parsed.transform_keys(
|
83
|
+
created_at_gt: "created_at[gt]",
|
84
|
+
created_at_gte: "created_at[gte]",
|
85
|
+
created_at_lt: "created_at[lt]",
|
86
|
+
created_at_lte: "created_at[lte]"
|
87
|
+
),
|
83
88
|
page: Orb::Internal::Page,
|
84
89
|
model: Orb::Models::Plan,
|
85
90
|
options: options
|
@@ -87,22 +92,22 @@ module Orb
|
|
87
92
|
end
|
88
93
|
|
89
94
|
# This endpoint is used to fetch [plan](/core-concepts#plan-and-price) details
|
90
|
-
#
|
91
|
-
#
|
92
|
-
#
|
95
|
+
# given a plan identifier. It returns information about the prices included in the
|
96
|
+
# plan and their configuration, as well as the product that the plan is attached
|
97
|
+
# to.
|
93
98
|
#
|
94
|
-
#
|
99
|
+
# ## Serialized prices
|
95
100
|
#
|
96
|
-
#
|
97
|
-
#
|
98
|
-
#
|
99
|
-
#
|
100
|
-
#
|
101
|
+
# Orb supports a few different pricing models out of the box. Each of these models
|
102
|
+
# is serialized differently in a given [Price](/core-concepts#plan-and-price)
|
103
|
+
# object. The `model_type` field determines the key for the configuration object
|
104
|
+
# that is present. A detailed explanation of price types can be found in the
|
105
|
+
# [Price schema](/core-concepts#plan-and-price).
|
101
106
|
#
|
102
|
-
#
|
107
|
+
# ## Phases
|
103
108
|
#
|
104
|
-
#
|
105
|
-
#
|
109
|
+
# Orb supports plan phases, also known as contract ramps. For plans with phases,
|
110
|
+
# the serialized prices refer to all prices across all phases.
|
106
111
|
#
|
107
112
|
# @overload fetch(plan_id, request_options: {})
|
108
113
|
#
|
@@ -5,8 +5,8 @@ module Orb
|
|
5
5
|
class Prices
|
6
6
|
class ExternalPriceID
|
7
7
|
# This endpoint allows you to update the `metadata` property on a price. If you
|
8
|
-
#
|
9
|
-
#
|
8
|
+
# pass null for the metadata value, it will clear any existing metadata for that
|
9
|
+
# price.
|
10
10
|
#
|
11
11
|
# @overload update(external_price_id, metadata: nil, request_options: {})
|
12
12
|
#
|
@@ -29,8 +29,8 @@ module Orb
|
|
29
29
|
end
|
30
30
|
|
31
31
|
# This endpoint returns a price given an external price id. See the
|
32
|
-
#
|
33
|
-
#
|
32
|
+
# [price creation API](/api-reference/price/create-price) for more information
|
33
|
+
# about external price aliases.
|
34
34
|
#
|
35
35
|
# @overload fetch(external_price_id, request_options: {})
|
36
36
|
#
|
data/lib/orb/resources/prices.rb
CHANGED
@@ -7,15 +7,15 @@ module Orb
|
|
7
7
|
attr_reader :external_price_id
|
8
8
|
|
9
9
|
# This endpoint is used to create a [price](/product-catalog/price-configuration).
|
10
|
-
#
|
11
|
-
#
|
12
|
-
#
|
10
|
+
# A price created using this endpoint is always an add-on, meaning that it’s not
|
11
|
+
# associated with a specific plan and can instead be individually added to
|
12
|
+
# subscriptions, including subscriptions on different plans.
|
13
13
|
#
|
14
|
-
#
|
15
|
-
#
|
14
|
+
# An `external_price_id` can be optionally specified as an alias to allow
|
15
|
+
# ergonomic interaction with prices in the Orb API.
|
16
16
|
#
|
17
|
-
#
|
18
|
-
#
|
17
|
+
# See the [Price resource](/product-catalog/price-configuration) for the
|
18
|
+
# specification of different price model configurations possible in this endpoint.
|
19
19
|
#
|
20
20
|
# @overload create(cadence:, currency:, item_id:, model_type:, name:, unit_config:, package_config:, matrix_config:, matrix_with_allocation_config:, tiered_config:, tiered_bps_config:, bps_config:, bulk_bps_config:, bulk_config:, threshold_total_amount_config:, tiered_package_config:, grouped_tiered_config:, max_group_tiered_package_config:, tiered_with_minimum_config:, package_with_allocation_config:, tiered_package_with_minimum_config:, unit_with_percent_config:, tiered_with_proration_config:, unit_with_proration_config:, grouped_allocation_config:, grouped_with_prorated_minimum_config:, grouped_with_metered_minimum_config:, matrix_with_display_name_config:, bulk_with_proration_config:, grouped_tiered_package_config:, scalable_matrix_with_unit_pricing_config:, scalable_matrix_with_tiered_pricing_config:, cumulative_grouped_bulk_config:, billable_metric_id: nil, billed_in_advance: nil, billing_cycle_configuration: nil, conversion_rate: nil, external_price_id: nil, fixed_price_quantity: nil, invoice_grouping_key: nil, invoicing_cycle_configuration: nil, metadata: nil, request_options: {})
|
21
21
|
#
|
@@ -72,8 +72,8 @@ module Orb
|
|
72
72
|
end
|
73
73
|
|
74
74
|
# This endpoint allows you to update the `metadata` property on a price. If you
|
75
|
-
#
|
76
|
-
#
|
75
|
+
# pass null for the metadata value, it will clear any existing metadata for that
|
76
|
+
# price.
|
77
77
|
#
|
78
78
|
# @overload update(price_id, metadata: nil, request_options: {})
|
79
79
|
#
|
@@ -96,7 +96,7 @@ module Orb
|
|
96
96
|
end
|
97
97
|
|
98
98
|
# This endpoint is used to list all add-on prices created using the
|
99
|
-
#
|
99
|
+
# [price creation endpoint](/api-reference/price/create-price).
|
100
100
|
#
|
101
101
|
# @overload list(cursor: nil, limit: nil, request_options: {})
|
102
102
|
#
|
@@ -120,26 +120,26 @@ module Orb
|
|
120
120
|
end
|
121
121
|
|
122
122
|
# This endpoint is used to evaluate the output of a price for a given customer and
|
123
|
-
#
|
124
|
-
#
|
125
|
-
#
|
126
|
-
#
|
127
|
-
#
|
128
|
-
#
|
129
|
-
#
|
130
|
-
#
|
131
|
-
#
|
132
|
-
#
|
133
|
-
#
|
134
|
-
#
|
135
|
-
#
|
136
|
-
#
|
137
|
-
#
|
138
|
-
#
|
139
|
-
#
|
140
|
-
#
|
141
|
-
#
|
142
|
-
#
|
123
|
+
# time range. It enables filtering and grouping the output using
|
124
|
+
# [computed properties](/extensibility/advanced-metrics#computed-properties),
|
125
|
+
# supporting the following workflows:
|
126
|
+
#
|
127
|
+
# 1. Showing detailed usage and costs to the end customer.
|
128
|
+
# 2. Auditing subtotals on invoice line items.
|
129
|
+
#
|
130
|
+
# For these workflows, the expressiveness of computed properties in both the
|
131
|
+
# filters and grouping is critical. For example, if you'd like to show your
|
132
|
+
# customer their usage grouped by hour and another property, you can do so with
|
133
|
+
# the following `grouping_keys`:
|
134
|
+
# `["hour_floor_timestamp_millis(timestamp_millis)", "my_property"]`. If you'd
|
135
|
+
# like to examine a customer's usage for a specific property value, you can do so
|
136
|
+
# with the following `filter`:
|
137
|
+
# `my_property = 'foo' AND my_other_property = 'bar'`.
|
138
|
+
#
|
139
|
+
# By default, the start of the time range must be no more than 100 days ago and
|
140
|
+
# the length of the results must be no greater than 1000. Note that this is a POST
|
141
|
+
# endpoint rather than a GET endpoint because it employs a JSON body rather than
|
142
|
+
# query parameters.
|
143
143
|
#
|
144
144
|
# @overload evaluate(price_id, timeframe_end:, timeframe_start:, customer_id: nil, external_customer_id: nil, filter: nil, grouping_keys: nil, request_options: {})
|
145
145
|
#
|
@@ -0,0 +1,87 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
module Orb
|
4
|
+
module Resources
|
5
|
+
class SubscriptionChanges
|
6
|
+
# This endpoint returns a subscription change given an identifier.
|
7
|
+
#
|
8
|
+
# A subscription change is created by including
|
9
|
+
# `Create-Pending-Subscription-Change: True` in the header of a subscription
|
10
|
+
# mutation API call (e.g.
|
11
|
+
# [create subscription endpoint](/api-reference/subscription/create-subscription),
|
12
|
+
# [schedule plan change endpoint](/api-reference/subscription/schedule-plan-change),
|
13
|
+
# ...). The subscription change will be referenced by the
|
14
|
+
# `pending_subscription_change` field in the response.
|
15
|
+
#
|
16
|
+
# @overload retrieve(subscription_change_id, request_options: {})
|
17
|
+
#
|
18
|
+
# @param subscription_change_id [String]
|
19
|
+
# @param request_options [Orb::RequestOptions, Hash{Symbol=>Object}, nil]
|
20
|
+
#
|
21
|
+
# @return [Orb::Models::SubscriptionChangeRetrieveResponse]
|
22
|
+
#
|
23
|
+
# @see Orb::Models::SubscriptionChangeRetrieveParams
|
24
|
+
def retrieve(subscription_change_id, params = {})
|
25
|
+
@client.request(
|
26
|
+
method: :get,
|
27
|
+
path: ["subscription_changes/%1$s", subscription_change_id],
|
28
|
+
model: Orb::Models::SubscriptionChangeRetrieveResponse,
|
29
|
+
options: params[:request_options]
|
30
|
+
)
|
31
|
+
end
|
32
|
+
|
33
|
+
# Apply a subscription change to perform the intended action. If a positive amount
|
34
|
+
# is passed with a request to this endpoint, any eligible invoices that were
|
35
|
+
# created will be issued immediately if they only contain in-advance fees.
|
36
|
+
#
|
37
|
+
# @overload apply(subscription_change_id, description: nil, previously_collected_amount: nil, request_options: {})
|
38
|
+
#
|
39
|
+
# @param subscription_change_id [String]
|
40
|
+
# @param description [String, nil]
|
41
|
+
# @param previously_collected_amount [String, nil]
|
42
|
+
# @param request_options [Orb::RequestOptions, Hash{Symbol=>Object}, nil]
|
43
|
+
#
|
44
|
+
# @return [Orb::Models::SubscriptionChangeApplyResponse]
|
45
|
+
#
|
46
|
+
# @see Orb::Models::SubscriptionChangeApplyParams
|
47
|
+
def apply(subscription_change_id, params = {})
|
48
|
+
parsed, options = Orb::Models::SubscriptionChangeApplyParams.dump_request(params)
|
49
|
+
@client.request(
|
50
|
+
method: :post,
|
51
|
+
path: ["subscription_changes/%1$s/apply", subscription_change_id],
|
52
|
+
body: parsed,
|
53
|
+
model: Orb::Models::SubscriptionChangeApplyResponse,
|
54
|
+
options: options
|
55
|
+
)
|
56
|
+
end
|
57
|
+
|
58
|
+
# Cancel a subscription change. The change can no longer be applied. A
|
59
|
+
# subscription can only have one "pending" change at a time - use this endpoint to
|
60
|
+
# cancel an existing change before creating a new one.
|
61
|
+
#
|
62
|
+
# @overload cancel(subscription_change_id, request_options: {})
|
63
|
+
#
|
64
|
+
# @param subscription_change_id [String]
|
65
|
+
# @param request_options [Orb::RequestOptions, Hash{Symbol=>Object}, nil]
|
66
|
+
#
|
67
|
+
# @return [Orb::Models::SubscriptionChangeCancelResponse]
|
68
|
+
#
|
69
|
+
# @see Orb::Models::SubscriptionChangeCancelParams
|
70
|
+
def cancel(subscription_change_id, params = {})
|
71
|
+
@client.request(
|
72
|
+
method: :post,
|
73
|
+
path: ["subscription_changes/%1$s/cancel", subscription_change_id],
|
74
|
+
model: Orb::Models::SubscriptionChangeCancelResponse,
|
75
|
+
options: params[:request_options]
|
76
|
+
)
|
77
|
+
end
|
78
|
+
|
79
|
+
# @api private
|
80
|
+
#
|
81
|
+
# @param client [Orb::Client]
|
82
|
+
def initialize(client:)
|
83
|
+
@client = client
|
84
|
+
end
|
85
|
+
end
|
86
|
+
end
|
87
|
+
end
|