orb-billing 0.1.0.pre.alpha.33
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 +7 -0
- data/README.md +169 -0
- data/lib/orb/client.rb +129 -0
- data/lib/orb/errors.rb +317 -0
- data/lib/orb/models/alert.rb +225 -0
- data/lib/orb/models/alert_create_for_customer_params.rb +77 -0
- data/lib/orb/models/alert_create_for_external_customer_params.rb +77 -0
- data/lib/orb/models/alert_create_for_subscription_params.rb +74 -0
- data/lib/orb/models/alert_disable_params.rb +26 -0
- data/lib/orb/models/alert_enable_params.rb +26 -0
- data/lib/orb/models/alert_list_params.rb +97 -0
- data/lib/orb/models/alert_retrieve_params.rb +19 -0
- data/lib/orb/models/alert_update_params.rb +46 -0
- data/lib/orb/models/amount_discount.rb +53 -0
- data/lib/orb/models/billable_metric.rb +76 -0
- data/lib/orb/models/billing_cycle_relative_date.rb +18 -0
- data/lib/orb/models/coupon.rb +86 -0
- data/lib/orb/models/coupon_archive_params.rb +19 -0
- data/lib/orb/models/coupon_create_params.rb +102 -0
- data/lib/orb/models/coupon_fetch_params.rb +19 -0
- data/lib/orb/models/coupon_list_params.rb +53 -0
- data/lib/orb/models/coupons/subscription_list_params.rb +40 -0
- data/lib/orb/models/credit_note.rb +522 -0
- data/lib/orb/models/credit_note_create_params.rb +77 -0
- data/lib/orb/models/credit_note_fetch_params.rb +19 -0
- data/lib/orb/models/credit_note_list_params.rb +73 -0
- data/lib/orb/models/customer.rb +872 -0
- data/lib/orb/models/customer_create_params.rb +843 -0
- data/lib/orb/models/customer_delete_params.rb +19 -0
- data/lib/orb/models/customer_fetch_by_external_id_params.rb +19 -0
- data/lib/orb/models/customer_fetch_params.rb +19 -0
- data/lib/orb/models/customer_list_params.rb +73 -0
- data/lib/orb/models/customer_sync_payment_methods_from_gateway_by_external_customer_id_params.rb +19 -0
- data/lib/orb/models/customer_sync_payment_methods_from_gateway_params.rb +19 -0
- data/lib/orb/models/customer_update_by_external_id_params.rb +848 -0
- data/lib/orb/models/customer_update_params.rb +838 -0
- data/lib/orb/models/customers/balance_transaction_create_params.rb +53 -0
- data/lib/orb/models/customers/balance_transaction_create_response.rb +167 -0
- data/lib/orb/models/customers/balance_transaction_list_params.rb +75 -0
- data/lib/orb/models/customers/balance_transaction_list_response.rb +167 -0
- data/lib/orb/models/customers/cost_list_by_external_id_params.rb +69 -0
- data/lib/orb/models/customers/cost_list_by_external_id_response.rb +106 -0
- data/lib/orb/models/customers/cost_list_params.rb +69 -0
- data/lib/orb/models/customers/cost_list_response.rb +106 -0
- data/lib/orb/models/customers/credit_list_by_external_id_params.rb +59 -0
- data/lib/orb/models/customers/credit_list_by_external_id_response.rb +72 -0
- data/lib/orb/models/customers/credit_list_params.rb +59 -0
- data/lib/orb/models/customers/credit_list_response.rb +72 -0
- data/lib/orb/models/customers/credits/ledger_create_entry_by_external_id_params.rb +215 -0
- data/lib/orb/models/customers/credits/ledger_create_entry_by_external_id_response.rb +1311 -0
- data/lib/orb/models/customers/credits/ledger_create_entry_params.rb +214 -0
- data/lib/orb/models/customers/credits/ledger_create_entry_response.rb +1310 -0
- data/lib/orb/models/customers/credits/ledger_list_by_external_id_params.rb +141 -0
- data/lib/orb/models/customers/credits/ledger_list_by_external_id_response.rb +1310 -0
- data/lib/orb/models/customers/credits/ledger_list_params.rb +141 -0
- data/lib/orb/models/customers/credits/ledger_list_response.rb +1306 -0
- data/lib/orb/models/customers/credits/top_up_create_by_external_id_params.rb +159 -0
- data/lib/orb/models/customers/credits/top_up_create_by_external_id_response.rb +154 -0
- data/lib/orb/models/customers/credits/top_up_create_params.rb +158 -0
- data/lib/orb/models/customers/credits/top_up_create_response.rb +153 -0
- data/lib/orb/models/customers/credits/top_up_delete_by_external_id_params.rb +29 -0
- data/lib/orb/models/customers/credits/top_up_delete_params.rb +29 -0
- data/lib/orb/models/customers/credits/top_up_list_by_external_id_params.rb +42 -0
- data/lib/orb/models/customers/credits/top_up_list_by_external_id_response.rb +154 -0
- data/lib/orb/models/customers/credits/top_up_list_params.rb +42 -0
- data/lib/orb/models/customers/credits/top_up_list_response.rb +153 -0
- data/lib/orb/models/dimensional_price_group.rb +64 -0
- data/lib/orb/models/dimensional_price_group_create_params.rb +63 -0
- data/lib/orb/models/dimensional_price_group_list_params.rb +38 -0
- data/lib/orb/models/dimensional_price_group_retrieve_params.rb +19 -0
- data/lib/orb/models/dimensional_price_groups/external_dimensional_price_group_id_retrieve_params.rb +21 -0
- data/lib/orb/models/dimensional_price_groups.rb +25 -0
- data/lib/orb/models/discount.rb +23 -0
- data/lib/orb/models/evaluate_price_group.rb +48 -0
- data/lib/orb/models/event_deprecate_params.rb +19 -0
- data/lib/orb/models/event_deprecate_response.rb +21 -0
- data/lib/orb/models/event_ingest_params.rb +100 -0
- data/lib/orb/models/event_ingest_response.rb +77 -0
- data/lib/orb/models/event_search_params.rb +45 -0
- data/lib/orb/models/event_search_response.rb +87 -0
- data/lib/orb/models/event_update_params.rb +58 -0
- data/lib/orb/models/event_update_response.rb +21 -0
- data/lib/orb/models/events/backfill_close_params.rb +21 -0
- data/lib/orb/models/events/backfill_close_response.rb +131 -0
- data/lib/orb/models/events/backfill_create_params.rb +97 -0
- data/lib/orb/models/events/backfill_create_response.rb +131 -0
- data/lib/orb/models/events/backfill_fetch_params.rb +21 -0
- data/lib/orb/models/events/backfill_fetch_response.rb +131 -0
- data/lib/orb/models/events/backfill_list_params.rb +40 -0
- data/lib/orb/models/events/backfill_list_response.rb +131 -0
- data/lib/orb/models/events/backfill_revert_params.rb +21 -0
- data/lib/orb/models/events/backfill_revert_response.rb +131 -0
- data/lib/orb/models/events/event_volumes.rb +54 -0
- data/lib/orb/models/events/volume_list_params.rb +64 -0
- data/lib/orb/models/invoice.rb +2218 -0
- data/lib/orb/models/invoice_create_params.rb +200 -0
- data/lib/orb/models/invoice_fetch_params.rb +19 -0
- data/lib/orb/models/invoice_fetch_upcoming_params.rb +25 -0
- data/lib/orb/models/invoice_fetch_upcoming_response.rb +2226 -0
- data/lib/orb/models/invoice_issue_params.rb +34 -0
- data/lib/orb/models/invoice_level_discount.rb +21 -0
- data/lib/orb/models/invoice_line_item_create_params.rb +62 -0
- data/lib/orb/models/invoice_line_item_create_response.rb +929 -0
- data/lib/orb/models/invoice_list_params.rb +197 -0
- data/lib/orb/models/invoice_mark_paid_params.rb +40 -0
- data/lib/orb/models/invoice_pay_params.rb +19 -0
- data/lib/orb/models/invoice_update_params.rb +28 -0
- data/lib/orb/models/invoice_void_params.rb +19 -0
- data/lib/orb/models/item.rb +82 -0
- data/lib/orb/models/item_create_params.rb +26 -0
- data/lib/orb/models/item_fetch_params.rb +19 -0
- data/lib/orb/models/item_list_params.rb +38 -0
- data/lib/orb/models/item_update_params.rb +73 -0
- data/lib/orb/models/metric_create_params.rb +56 -0
- data/lib/orb/models/metric_fetch_params.rb +19 -0
- data/lib/orb/models/metric_list_params.rb +73 -0
- data/lib/orb/models/metric_update_params.rb +28 -0
- data/lib/orb/models/pagination_metadata.rb +25 -0
- data/lib/orb/models/percentage_discount.rb +54 -0
- data/lib/orb/models/plan.rb +894 -0
- data/lib/orb/models/plan_create_params.rb +6702 -0
- data/lib/orb/models/plan_fetch_params.rb +19 -0
- data/lib/orb/models/plan_list_params.rb +100 -0
- data/lib/orb/models/plan_update_params.rb +37 -0
- data/lib/orb/models/plans/external_plan_id_fetch_params.rb +21 -0
- data/lib/orb/models/plans/external_plan_id_update_params.rb +39 -0
- data/lib/orb/models/price.rb +12229 -0
- data/lib/orb/models/price_create_params.rb +808 -0
- data/lib/orb/models/price_evaluate_params.rb +80 -0
- data/lib/orb/models/price_evaluate_response.rb +20 -0
- data/lib/orb/models/price_fetch_params.rb +19 -0
- data/lib/orb/models/price_list_params.rb +38 -0
- data/lib/orb/models/price_update_params.rb +28 -0
- data/lib/orb/models/prices/external_price_id_fetch_params.rb +21 -0
- data/lib/orb/models/prices/external_price_id_update_params.rb +30 -0
- data/lib/orb/models/subscription.rb +1233 -0
- data/lib/orb/models/subscription_cancel_params.rb +58 -0
- data/lib/orb/models/subscription_cancel_response.rb +1217 -0
- data/lib/orb/models/subscription_create_params.rb +15065 -0
- data/lib/orb/models/subscription_create_response.rb +1217 -0
- data/lib/orb/models/subscription_fetch_costs_params.rb +67 -0
- data/lib/orb/models/subscription_fetch_costs_response.rb +104 -0
- data/lib/orb/models/subscription_fetch_params.rb +19 -0
- data/lib/orb/models/subscription_fetch_schedule_params.rb +73 -0
- data/lib/orb/models/subscription_fetch_schedule_response.rb +68 -0
- data/lib/orb/models/subscription_fetch_usage_params.rb +135 -0
- data/lib/orb/models/subscription_list_params.rb +108 -0
- data/lib/orb/models/subscription_price_intervals_params.rb +8358 -0
- data/lib/orb/models/subscription_price_intervals_response.rb +1224 -0
- data/lib/orb/models/subscription_schedule_plan_change_params.rb +15088 -0
- data/lib/orb/models/subscription_schedule_plan_change_response.rb +1224 -0
- data/lib/orb/models/subscription_trigger_phase_params.rb +36 -0
- data/lib/orb/models/subscription_trigger_phase_response.rb +1224 -0
- data/lib/orb/models/subscription_unschedule_cancellation_params.rb +19 -0
- data/lib/orb/models/subscription_unschedule_cancellation_response.rb +1224 -0
- data/lib/orb/models/subscription_unschedule_fixed_fee_quantity_updates_params.rb +26 -0
- data/lib/orb/models/subscription_unschedule_fixed_fee_quantity_updates_response.rb +1228 -0
- data/lib/orb/models/subscription_unschedule_pending_plan_changes_params.rb +19 -0
- data/lib/orb/models/subscription_unschedule_pending_plan_changes_response.rb +1224 -0
- data/lib/orb/models/subscription_update_fixed_fee_quantity_params.rb +90 -0
- data/lib/orb/models/subscription_update_fixed_fee_quantity_response.rb +1224 -0
- data/lib/orb/models/subscription_update_params.rb +74 -0
- data/lib/orb/models/subscription_update_trial_params.rb +59 -0
- data/lib/orb/models/subscription_update_trial_response.rb +1222 -0
- data/lib/orb/models/subscription_usage.rb +258 -0
- data/lib/orb/models/subscriptions.rb +25 -0
- data/lib/orb/models/top_level_ping_params.rb +19 -0
- data/lib/orb/models/top_level_ping_response.rb +20 -0
- data/lib/orb/models/trial_discount.rb +69 -0
- data/lib/orb/models/usage_discount.rb +54 -0
- data/lib/orb/page.rb +114 -0
- data/lib/orb/request_options.rb +75 -0
- data/lib/orb/resources/alerts.rb +239 -0
- data/lib/orb/resources/coupons/subscriptions.rb +43 -0
- data/lib/orb/resources/coupons.rb +115 -0
- data/lib/orb/resources/credit_notes.rb +87 -0
- data/lib/orb/resources/customers/balance_transactions.rb +96 -0
- data/lib/orb/resources/customers/costs.rb +298 -0
- data/lib/orb/resources/customers/credits/ledger.rb +527 -0
- data/lib/orb/resources/customers/credits/top_ups.rb +192 -0
- data/lib/orb/resources/customers/credits.rb +88 -0
- data/lib/orb/resources/customers.rb +321 -0
- data/lib/orb/resources/dimensional_price_groups/external_dimensional_price_group_id.rb +38 -0
- data/lib/orb/resources/dimensional_price_groups.rb +93 -0
- data/lib/orb/resources/events/backfills.rb +174 -0
- data/lib/orb/resources/events/volume.rb +52 -0
- data/lib/orb/resources/events.rb +415 -0
- data/lib/orb/resources/invoice_line_items.rb +41 -0
- data/lib/orb/resources/invoices.rb +266 -0
- data/lib/orb/resources/items.rb +95 -0
- data/lib/orb/resources/metrics.rb +114 -0
- data/lib/orb/resources/plans/external_plan_id.rb +76 -0
- data/lib/orb/resources/plans.rb +133 -0
- data/lib/orb/resources/prices/external_price_id.rb +61 -0
- data/lib/orb/resources/prices.rb +197 -0
- data/lib/orb/resources/subscriptions.rb +1278 -0
- data/lib/orb/resources/top_level.rb +37 -0
- data/lib/orb/transport/base_client.rb +459 -0
- data/lib/orb/transport/pooled_net_requester.rb +182 -0
- data/lib/orb/type/array_of.rb +112 -0
- data/lib/orb/type/base_model.rb +367 -0
- data/lib/orb/type/base_page.rb +61 -0
- data/lib/orb/type/boolean_model.rb +52 -0
- data/lib/orb/type/converter.rb +217 -0
- data/lib/orb/type/enum.rb +101 -0
- data/lib/orb/type/hash_of.rb +132 -0
- data/lib/orb/type/request_parameters.rb +38 -0
- data/lib/orb/type/union.rb +225 -0
- data/lib/orb/type/unknown.rb +56 -0
- data/lib/orb/type.rb +23 -0
- data/lib/orb/util.rb +722 -0
- data/lib/orb/version.rb +5 -0
- data/lib/orb.rb +247 -0
- data/manifest.yaml +15 -0
- data/rbi/lib/orb/client.rbi +90 -0
- data/rbi/lib/orb/errors.rbi +246 -0
- data/rbi/lib/orb/models/alert.rbi +239 -0
- data/rbi/lib/orb/models/alert_create_for_customer_params.rbi +86 -0
- data/rbi/lib/orb/models/alert_create_for_external_customer_params.rbi +88 -0
- data/rbi/lib/orb/models/alert_create_for_subscription_params.rbi +83 -0
- data/rbi/lib/orb/models/alert_disable_params.rbi +28 -0
- data/rbi/lib/orb/models/alert_enable_params.rbi +28 -0
- data/rbi/lib/orb/models/alert_list_params.rbi +95 -0
- data/rbi/lib/orb/models/alert_retrieve_params.rbi +20 -0
- data/rbi/lib/orb/models/alert_update_params.rbi +51 -0
- data/rbi/lib/orb/models/amount_discount.rbi +62 -0
- data/rbi/lib/orb/models/billable_metric.rbi +83 -0
- data/rbi/lib/orb/models/billing_cycle_relative_date.rbi +19 -0
- data/rbi/lib/orb/models/coupon.rbi +90 -0
- data/rbi/lib/orb/models/coupon_archive_params.rbi +20 -0
- data/rbi/lib/orb/models/coupon_create_params.rbi +120 -0
- data/rbi/lib/orb/models/coupon_fetch_params.rbi +20 -0
- data/rbi/lib/orb/models/coupon_list_params.rbi +59 -0
- data/rbi/lib/orb/models/coupons/subscription_list_params.rbi +41 -0
- data/rbi/lib/orb/models/credit_note.rbi +546 -0
- data/rbi/lib/orb/models/credit_note_create_params.rbi +84 -0
- data/rbi/lib/orb/models/credit_note_fetch_params.rbi +20 -0
- data/rbi/lib/orb/models/credit_note_list_params.rbi +74 -0
- data/rbi/lib/orb/models/customer.rbi +941 -0
- data/rbi/lib/orb/models/customer_create_params.rbi +923 -0
- data/rbi/lib/orb/models/customer_delete_params.rbi +20 -0
- data/rbi/lib/orb/models/customer_fetch_by_external_id_params.rbi +20 -0
- data/rbi/lib/orb/models/customer_fetch_params.rbi +20 -0
- data/rbi/lib/orb/models/customer_list_params.rbi +74 -0
- data/rbi/lib/orb/models/customer_sync_payment_methods_from_gateway_by_external_customer_id_params.rbi +20 -0
- data/rbi/lib/orb/models/customer_sync_payment_methods_from_gateway_params.rbi +20 -0
- data/rbi/lib/orb/models/customer_update_by_external_id_params.rbi +945 -0
- data/rbi/lib/orb/models/customer_update_params.rbi +919 -0
- data/rbi/lib/orb/models/customers/balance_transaction_create_params.rbi +64 -0
- data/rbi/lib/orb/models/customers/balance_transaction_create_response.rbi +199 -0
- data/rbi/lib/orb/models/customers/balance_transaction_list_params.rbi +76 -0
- data/rbi/lib/orb/models/customers/balance_transaction_list_response.rbi +191 -0
- data/rbi/lib/orb/models/customers/cost_list_by_external_id_params.rbi +86 -0
- data/rbi/lib/orb/models/customers/cost_list_by_external_id_response.rbi +214 -0
- data/rbi/lib/orb/models/customers/cost_list_params.rbi +84 -0
- data/rbi/lib/orb/models/customers/cost_list_response.rbi +212 -0
- data/rbi/lib/orb/models/customers/credit_list_by_external_id_params.rbi +64 -0
- data/rbi/lib/orb/models/customers/credit_list_by_external_id_response.rbi +87 -0
- data/rbi/lib/orb/models/customers/credit_list_params.rbi +64 -0
- data/rbi/lib/orb/models/customers/credit_list_response.rbi +86 -0
- data/rbi/lib/orb/models/customers/credits/ledger_create_entry_by_external_id_params.rbi +270 -0
- data/rbi/lib/orb/models/customers/credits/ledger_create_entry_by_external_id_response.rbi +1670 -0
- data/rbi/lib/orb/models/customers/credits/ledger_create_entry_params.rbi +238 -0
- data/rbi/lib/orb/models/customers/credits/ledger_create_entry_response.rbi +1626 -0
- data/rbi/lib/orb/models/customers/credits/ledger_list_by_external_id_params.rbi +181 -0
- data/rbi/lib/orb/models/customers/credits/ledger_list_by_external_id_response.rbi +1654 -0
- data/rbi/lib/orb/models/customers/credits/ledger_list_params.rbi +144 -0
- data/rbi/lib/orb/models/customers/credits/ledger_list_response.rbi +1588 -0
- data/rbi/lib/orb/models/customers/credits/top_up_create_by_external_id_params.rbi +196 -0
- data/rbi/lib/orb/models/customers/credits/top_up_create_by_external_id_response.rbi +198 -0
- data/rbi/lib/orb/models/customers/credits/top_up_create_params.rbi +176 -0
- data/rbi/lib/orb/models/customers/credits/top_up_create_response.rbi +175 -0
- data/rbi/lib/orb/models/customers/credits/top_up_delete_by_external_id_params.rbi +31 -0
- data/rbi/lib/orb/models/customers/credits/top_up_delete_params.rbi +28 -0
- data/rbi/lib/orb/models/customers/credits/top_up_list_by_external_id_params.rbi +49 -0
- data/rbi/lib/orb/models/customers/credits/top_up_list_by_external_id_response.rbi +188 -0
- data/rbi/lib/orb/models/customers/credits/top_up_list_params.rbi +49 -0
- data/rbi/lib/orb/models/customers/credits/top_up_list_response.rbi +168 -0
- data/rbi/lib/orb/models/dimensional_price_group.rbi +75 -0
- data/rbi/lib/orb/models/dimensional_price_group_create_params.rbi +66 -0
- data/rbi/lib/orb/models/dimensional_price_group_list_params.rbi +39 -0
- data/rbi/lib/orb/models/dimensional_price_group_retrieve_params.rbi +20 -0
- data/rbi/lib/orb/models/dimensional_price_groups/external_dimensional_price_group_id_retrieve_params.rbi +22 -0
- data/rbi/lib/orb/models/dimensional_price_groups.rbi +35 -0
- data/rbi/lib/orb/models/discount.rbi +18 -0
- data/rbi/lib/orb/models/evaluate_price_group.rbi +45 -0
- data/rbi/lib/orb/models/event_deprecate_params.rbi +20 -0
- data/rbi/lib/orb/models/event_deprecate_response.rbi +19 -0
- data/rbi/lib/orb/models/event_ingest_params.rbi +120 -0
- data/rbi/lib/orb/models/event_ingest_response.rbi +79 -0
- data/rbi/lib/orb/models/event_search_params.rbi +53 -0
- data/rbi/lib/orb/models/event_search_response.rbi +100 -0
- data/rbi/lib/orb/models/event_update_params.rbi +71 -0
- data/rbi/lib/orb/models/event_update_response.rbi +19 -0
- data/rbi/lib/orb/models/events/backfill_close_params.rbi +22 -0
- data/rbi/lib/orb/models/events/backfill_close_response.rbi +127 -0
- data/rbi/lib/orb/models/events/backfill_create_params.rbi +97 -0
- data/rbi/lib/orb/models/events/backfill_create_response.rbi +128 -0
- data/rbi/lib/orb/models/events/backfill_fetch_params.rbi +22 -0
- data/rbi/lib/orb/models/events/backfill_fetch_response.rbi +127 -0
- data/rbi/lib/orb/models/events/backfill_list_params.rbi +41 -0
- data/rbi/lib/orb/models/events/backfill_list_response.rbi +127 -0
- data/rbi/lib/orb/models/events/backfill_revert_params.rbi +22 -0
- data/rbi/lib/orb/models/events/backfill_revert_response.rbi +128 -0
- data/rbi/lib/orb/models/events/event_volumes.rbi +47 -0
- data/rbi/lib/orb/models/events/volume_list_params.rbi +69 -0
- data/rbi/lib/orb/models/invoice.rbi +2466 -0
- data/rbi/lib/orb/models/invoice_create_params.rbi +230 -0
- data/rbi/lib/orb/models/invoice_fetch_params.rbi +20 -0
- data/rbi/lib/orb/models/invoice_fetch_upcoming_params.rbi +24 -0
- data/rbi/lib/orb/models/invoice_fetch_upcoming_response.rbi +2646 -0
- data/rbi/lib/orb/models/invoice_issue_params.rbi +32 -0
- data/rbi/lib/orb/models/invoice_level_discount.rbi +16 -0
- data/rbi/lib/orb/models/invoice_line_item_create_params.rbi +67 -0
- data/rbi/lib/orb/models/invoice_line_item_create_response.rbi +1164 -0
- data/rbi/lib/orb/models/invoice_list_params.rbi +187 -0
- data/rbi/lib/orb/models/invoice_mark_paid_params.rbi +48 -0
- data/rbi/lib/orb/models/invoice_pay_params.rbi +20 -0
- data/rbi/lib/orb/models/invoice_update_params.rbi +36 -0
- data/rbi/lib/orb/models/invoice_void_params.rbi +20 -0
- data/rbi/lib/orb/models/item.rbi +101 -0
- data/rbi/lib/orb/models/item_create_params.rbi +25 -0
- data/rbi/lib/orb/models/item_fetch_params.rbi +20 -0
- data/rbi/lib/orb/models/item_list_params.rbi +39 -0
- data/rbi/lib/orb/models/item_update_params.rbi +113 -0
- data/rbi/lib/orb/models/metric_create_params.rbi +62 -0
- data/rbi/lib/orb/models/metric_fetch_params.rbi +20 -0
- data/rbi/lib/orb/models/metric_list_params.rbi +74 -0
- data/rbi/lib/orb/models/metric_update_params.rbi +36 -0
- data/rbi/lib/orb/models/pagination_metadata.rbi +21 -0
- data/rbi/lib/orb/models/percentage_discount.rbi +63 -0
- data/rbi/lib/orb/models/plan.rbi +1071 -0
- data/rbi/lib/orb/models/plan_create_params.rbi +10069 -0
- data/rbi/lib/orb/models/plan_fetch_params.rbi +20 -0
- data/rbi/lib/orb/models/plan_list_params.rbi +100 -0
- data/rbi/lib/orb/models/plan_update_params.rbi +46 -0
- data/rbi/lib/orb/models/plans/external_plan_id_fetch_params.rbi +22 -0
- data/rbi/lib/orb/models/plans/external_plan_id_update_params.rbi +48 -0
- data/rbi/lib/orb/models/price.rbi +15341 -0
- data/rbi/lib/orb/models/price_create_params.rbi +885 -0
- data/rbi/lib/orb/models/price_evaluate_params.rbi +81 -0
- data/rbi/lib/orb/models/price_evaluate_response.rbi +21 -0
- data/rbi/lib/orb/models/price_fetch_params.rbi +20 -0
- data/rbi/lib/orb/models/price_list_params.rbi +39 -0
- data/rbi/lib/orb/models/price_update_params.rbi +36 -0
- data/rbi/lib/orb/models/prices/external_price_id_fetch_params.rbi +22 -0
- data/rbi/lib/orb/models/prices/external_price_id_update_params.rbi +38 -0
- data/rbi/lib/orb/models/subscription.rbi +1381 -0
- data/rbi/lib/orb/models/subscription_cancel_params.rbi +75 -0
- data/rbi/lib/orb/models/subscription_cancel_response.rbi +1374 -0
- data/rbi/lib/orb/models/subscription_create_params.rbi +23422 -0
- data/rbi/lib/orb/models/subscription_create_response.rbi +1374 -0
- data/rbi/lib/orb/models/subscription_fetch_costs_params.rbi +82 -0
- data/rbi/lib/orb/models/subscription_fetch_costs_response.rbi +210 -0
- data/rbi/lib/orb/models/subscription_fetch_params.rbi +20 -0
- data/rbi/lib/orb/models/subscription_fetch_schedule_params.rbi +74 -0
- data/rbi/lib/orb/models/subscription_fetch_schedule_response.rbi +81 -0
- data/rbi/lib/orb/models/subscription_fetch_usage_params.rbi +137 -0
- data/rbi/lib/orb/models/subscription_list_params.rbi +108 -0
- data/rbi/lib/orb/models/subscription_price_intervals_params.rbi +12991 -0
- data/rbi/lib/orb/models/subscription_price_intervals_response.rbi +1387 -0
- data/rbi/lib/orb/models/subscription_schedule_plan_change_params.rbi +23589 -0
- data/rbi/lib/orb/models/subscription_schedule_plan_change_response.rbi +1390 -0
- data/rbi/lib/orb/models/subscription_trigger_phase_params.rbi +45 -0
- data/rbi/lib/orb/models/subscription_trigger_phase_response.rbi +1381 -0
- data/rbi/lib/orb/models/subscription_unschedule_cancellation_params.rbi +20 -0
- data/rbi/lib/orb/models/subscription_unschedule_cancellation_response.rbi +1400 -0
- data/rbi/lib/orb/models/subscription_unschedule_fixed_fee_quantity_updates_params.rbi +25 -0
- data/rbi/lib/orb/models/subscription_unschedule_fixed_fee_quantity_updates_response.rbi +1451 -0
- data/rbi/lib/orb/models/subscription_unschedule_pending_plan_changes_params.rbi +20 -0
- data/rbi/lib/orb/models/subscription_unschedule_pending_plan_changes_response.rbi +1410 -0
- data/rbi/lib/orb/models/subscription_update_fixed_fee_quantity_params.rbi +104 -0
- data/rbi/lib/orb/models/subscription_update_fixed_fee_quantity_response.rbi +1400 -0
- data/rbi/lib/orb/models/subscription_update_params.rbi +77 -0
- data/rbi/lib/orb/models/subscription_update_trial_params.rbi +63 -0
- data/rbi/lib/orb/models/subscription_update_trial_response.rbi +1378 -0
- data/rbi/lib/orb/models/subscription_usage.rbi +323 -0
- data/rbi/lib/orb/models/subscriptions.rbi +33 -0
- data/rbi/lib/orb/models/top_level_ping_params.rbi +20 -0
- data/rbi/lib/orb/models/top_level_ping_response.rbi +18 -0
- data/rbi/lib/orb/models/trial_discount.rbi +73 -0
- data/rbi/lib/orb/models/usage_discount.rbi +62 -0
- data/rbi/lib/orb/page.rbi +35 -0
- data/rbi/lib/orb/request_options.rbi +48 -0
- data/rbi/lib/orb/resources/alerts.rbi +216 -0
- data/rbi/lib/orb/resources/coupons/subscriptions.rbi +38 -0
- data/rbi/lib/orb/resources/coupons.rbi +96 -0
- data/rbi/lib/orb/resources/credit_notes.rbi +74 -0
- data/rbi/lib/orb/resources/customers/balance_transactions.rbi +92 -0
- data/rbi/lib/orb/resources/customers/costs.rbi +304 -0
- data/rbi/lib/orb/resources/customers/credits/ledger.rbi +645 -0
- data/rbi/lib/orb/resources/customers/credits/top_ups.rbi +180 -0
- data/rbi/lib/orb/resources/customers/credits.rbi +88 -0
- data/rbi/lib/orb/resources/customers.rbi +714 -0
- data/rbi/lib/orb/resources/dimensional_price_groups/external_dimensional_price_group_id.rbi +25 -0
- data/rbi/lib/orb/resources/dimensional_price_groups.rbi +78 -0
- data/rbi/lib/orb/resources/events/backfills.rbi +161 -0
- data/rbi/lib/orb/resources/events/volume.rbi +57 -0
- data/rbi/lib/orb/resources/events.rbi +408 -0
- data/rbi/lib/orb/resources/invoice_line_items.rbi +44 -0
- data/rbi/lib/orb/resources/invoices.rbi +262 -0
- data/rbi/lib/orb/resources/items.rbi +65 -0
- data/rbi/lib/orb/resources/metrics.rbi +102 -0
- data/rbi/lib/orb/resources/plans/external_plan_id.rbi +67 -0
- data/rbi/lib/orb/resources/plans.rbi +170 -0
- data/rbi/lib/orb/resources/prices/external_price_id.rbi +110 -0
- data/rbi/lib/orb/resources/prices.rbi +371 -0
- data/rbi/lib/orb/resources/subscriptions.rbi +1469 -0
- data/rbi/lib/orb/resources/top_level.rbi +25 -0
- data/rbi/lib/orb/transport/base_client.rbi +205 -0
- data/rbi/lib/orb/transport/pooled_net_requester.rbi +64 -0
- data/rbi/lib/orb/type/array_of.rbi +82 -0
- data/rbi/lib/orb/type/base_model.rbi +197 -0
- data/rbi/lib/orb/type/base_page.rbi +38 -0
- data/rbi/lib/orb/type/boolean_model.rbi +41 -0
- data/rbi/lib/orb/type/converter.rbi +95 -0
- data/rbi/lib/orb/type/enum.rbi +58 -0
- data/rbi/lib/orb/type/hash_of.rbi +86 -0
- data/rbi/lib/orb/type/request_parameters.rbi +20 -0
- data/rbi/lib/orb/type/union.rbi +66 -0
- data/rbi/lib/orb/type/unknown.rbi +37 -0
- data/rbi/lib/orb/type.rbi +23 -0
- data/rbi/lib/orb/util.rbi +278 -0
- data/rbi/lib/orb/version.rbi +5 -0
- data/sig/orb/client.rbs +53 -0
- data/sig/orb/errors.rbs +201 -0
- data/sig/orb/models/alert.rbs +142 -0
- data/sig/orb/models/alert_create_for_customer_params.rbs +56 -0
- data/sig/orb/models/alert_create_for_external_customer_params.rbs +56 -0
- data/sig/orb/models/alert_create_for_subscription_params.rbs +52 -0
- data/sig/orb/models/alert_disable_params.rbs +20 -0
- data/sig/orb/models/alert_enable_params.rbs +20 -0
- data/sig/orb/models/alert_list_params.rbs +57 -0
- data/sig/orb/models/alert_retrieve_params.rbs +14 -0
- data/sig/orb/models/alert_update_params.rbs +31 -0
- data/sig/orb/models/amount_discount.rbs +40 -0
- data/sig/orb/models/billable_metric.rbs +50 -0
- data/sig/orb/models/billing_cycle_relative_date.rbs +14 -0
- data/sig/orb/models/coupon.rbs +51 -0
- data/sig/orb/models/coupon_archive_params.rbs +14 -0
- data/sig/orb/models/coupon_create_params.rbs +77 -0
- data/sig/orb/models/coupon_fetch_params.rbs +14 -0
- data/sig/orb/models/coupon_list_params.rbs +37 -0
- data/sig/orb/models/coupons/subscription_list_params.rbs +27 -0
- data/sig/orb/models/credit_note.rbs +345 -0
- data/sig/orb/models/credit_note_create_params.rbs +57 -0
- data/sig/orb/models/credit_note_fetch_params.rbs +14 -0
- data/sig/orb/models/credit_note_list_params.rbs +45 -0
- data/sig/orb/models/customer.rbs +628 -0
- data/sig/orb/models/customer_create_params.rbs +624 -0
- data/sig/orb/models/customer_delete_params.rbs +14 -0
- data/sig/orb/models/customer_fetch_by_external_id_params.rbs +14 -0
- data/sig/orb/models/customer_fetch_params.rbs +14 -0
- data/sig/orb/models/customer_list_params.rbs +45 -0
- data/sig/orb/models/customer_sync_payment_methods_from_gateway_by_external_customer_id_params.rbs +15 -0
- data/sig/orb/models/customer_sync_payment_methods_from_gateway_params.rbs +15 -0
- data/sig/orb/models/customer_update_by_external_id_params.rbs +620 -0
- data/sig/orb/models/customer_update_params.rbs +620 -0
- data/sig/orb/models/customers/balance_transaction_create_params.rbs +44 -0
- data/sig/orb/models/customers/balance_transaction_create_response.rbs +114 -0
- data/sig/orb/models/customers/balance_transaction_list_params.rbs +47 -0
- data/sig/orb/models/customers/balance_transaction_list_response.rbs +114 -0
- data/sig/orb/models/customers/cost_list_by_external_id_params.rbs +48 -0
- data/sig/orb/models/customers/cost_list_by_external_id_response.rbs +82 -0
- data/sig/orb/models/customers/cost_list_params.rbs +48 -0
- data/sig/orb/models/customers/cost_list_response.rbs +80 -0
- data/sig/orb/models/customers/credit_list_by_external_id_params.rbs +41 -0
- data/sig/orb/models/customers/credit_list_by_external_id_response.rbs +55 -0
- data/sig/orb/models/customers/credit_list_params.rbs +41 -0
- data/sig/orb/models/customers/credit_list_response.rbs +55 -0
- data/sig/orb/models/customers/credits/ledger_create_entry_by_external_id_params.rbs +120 -0
- data/sig/orb/models/customers/credits/ledger_create_entry_by_external_id_response.rbs +814 -0
- data/sig/orb/models/customers/credits/ledger_create_entry_params.rbs +120 -0
- data/sig/orb/models/customers/credits/ledger_create_entry_response.rbs +814 -0
- data/sig/orb/models/customers/credits/ledger_list_by_external_id_params.rbs +99 -0
- data/sig/orb/models/customers/credits/ledger_list_by_external_id_response.rbs +814 -0
- data/sig/orb/models/customers/credits/ledger_list_params.rbs +99 -0
- data/sig/orb/models/customers/credits/ledger_list_response.rbs +814 -0
- data/sig/orb/models/customers/credits/top_up_create_by_external_id_params.rbs +95 -0
- data/sig/orb/models/customers/credits/top_up_create_by_external_id_response.rbs +90 -0
- data/sig/orb/models/customers/credits/top_up_create_params.rbs +95 -0
- data/sig/orb/models/customers/credits/top_up_create_response.rbs +90 -0
- data/sig/orb/models/customers/credits/top_up_delete_by_external_id_params.rbs +24 -0
- data/sig/orb/models/customers/credits/top_up_delete_params.rbs +24 -0
- data/sig/orb/models/customers/credits/top_up_list_by_external_id_params.rbs +29 -0
- data/sig/orb/models/customers/credits/top_up_list_by_external_id_response.rbs +90 -0
- data/sig/orb/models/customers/credits/top_up_list_params.rbs +29 -0
- data/sig/orb/models/customers/credits/top_up_list_response.rbs +90 -0
- data/sig/orb/models/dimensional_price_group.rbs +38 -0
- data/sig/orb/models/dimensional_price_group_create_params.rbs +39 -0
- data/sig/orb/models/dimensional_price_group_list_params.rbs +25 -0
- data/sig/orb/models/dimensional_price_group_retrieve_params.rbs +15 -0
- data/sig/orb/models/dimensional_price_groups/external_dimensional_price_group_id_retrieve_params.rbs +17 -0
- data/sig/orb/models/dimensional_price_groups.rbs +22 -0
- data/sig/orb/models/discount.rbs +15 -0
- data/sig/orb/models/evaluate_price_group.rbs +34 -0
- data/sig/orb/models/event_deprecate_params.rbs +14 -0
- data/sig/orb/models/event_deprecate_response.rbs +13 -0
- data/sig/orb/models/event_ingest_params.rbs +68 -0
- data/sig/orb/models/event_ingest_response.rbs +53 -0
- data/sig/orb/models/event_search_params.rbs +31 -0
- data/sig/orb/models/event_search_response.rbs +55 -0
- data/sig/orb/models/event_update_params.rbs +39 -0
- data/sig/orb/models/event_update_response.rbs +13 -0
- data/sig/orb/models/events/backfill_close_params.rbs +16 -0
- data/sig/orb/models/events/backfill_close_response.rbs +73 -0
- data/sig/orb/models/events/backfill_create_params.rbs +51 -0
- data/sig/orb/models/events/backfill_create_response.rbs +73 -0
- data/sig/orb/models/events/backfill_fetch_params.rbs +16 -0
- data/sig/orb/models/events/backfill_fetch_response.rbs +73 -0
- data/sig/orb/models/events/backfill_list_params.rbs +27 -0
- data/sig/orb/models/events/backfill_list_response.rbs +73 -0
- data/sig/orb/models/events/backfill_revert_params.rbs +16 -0
- data/sig/orb/models/events/backfill_revert_response.rbs +73 -0
- data/sig/orb/models/events/event_volumes.rbs +39 -0
- data/sig/orb/models/events/volume_list_params.rbs +41 -0
- data/sig/orb/models/invoice.rbs +1430 -0
- data/sig/orb/models/invoice_create_params.rbs +120 -0
- data/sig/orb/models/invoice_fetch_params.rbs +14 -0
- data/sig/orb/models/invoice_fetch_upcoming_params.rbs +20 -0
- data/sig/orb/models/invoice_fetch_upcoming_response.rbs +1430 -0
- data/sig/orb/models/invoice_issue_params.rbs +21 -0
- data/sig/orb/models/invoice_level_discount.rbs +14 -0
- data/sig/orb/models/invoice_line_item_create_params.rbs +43 -0
- data/sig/orb/models/invoice_line_item_create_response.rbs +546 -0
- data/sig/orb/models/invoice_list_params.rbs +122 -0
- data/sig/orb/models/invoice_mark_paid_params.rbs +27 -0
- data/sig/orb/models/invoice_pay_params.rbs +14 -0
- data/sig/orb/models/invoice_update_params.rbs +20 -0
- data/sig/orb/models/invoice_void_params.rbs +14 -0
- data/sig/orb/models/item.rbs +72 -0
- data/sig/orb/models/item_create_params.rbs +19 -0
- data/sig/orb/models/item_fetch_params.rbs +14 -0
- data/sig/orb/models/item_list_params.rbs +25 -0
- data/sig/orb/models/item_update_params.rbs +69 -0
- data/sig/orb/models/metric_create_params.rbs +39 -0
- data/sig/orb/models/metric_fetch_params.rbs +14 -0
- data/sig/orb/models/metric_list_params.rbs +45 -0
- data/sig/orb/models/metric_update_params.rbs +20 -0
- data/sig/orb/models/pagination_metadata.rbs +15 -0
- data/sig/orb/models/percentage_discount.rbs +40 -0
- data/sig/orb/models/plan.rbs +529 -0
- data/sig/orb/models/plan_create_params.rbs +3991 -0
- data/sig/orb/models/plan_fetch_params.rbs +14 -0
- data/sig/orb/models/plan_list_params.rbs +65 -0
- data/sig/orb/models/plan_update_params.rbs +24 -0
- data/sig/orb/models/plans/external_plan_id_fetch_params.rbs +16 -0
- data/sig/orb/models/plans/external_plan_id_update_params.rbs +26 -0
- data/sig/orb/models/price.rbs +8108 -0
- data/sig/orb/models/price_create_params.rbs +520 -0
- data/sig/orb/models/price_evaluate_params.rbs +45 -0
- data/sig/orb/models/price_evaluate_response.rbs +14 -0
- data/sig/orb/models/price_fetch_params.rbs +14 -0
- data/sig/orb/models/price_list_params.rbs +25 -0
- data/sig/orb/models/price_update_params.rbs +20 -0
- data/sig/orb/models/prices/external_price_id_fetch_params.rbs +16 -0
- data/sig/orb/models/prices/external_price_id_update_params.rbs +22 -0
- data/sig/orb/models/subscription.rbs +687 -0
- data/sig/orb/models/subscription_cancel_params.rbs +44 -0
- data/sig/orb/models/subscription_cancel_response.rbs +687 -0
- data/sig/orb/models/subscription_create_params.rbs +9141 -0
- data/sig/orb/models/subscription_create_response.rbs +687 -0
- data/sig/orb/models/subscription_fetch_costs_params.rbs +46 -0
- data/sig/orb/models/subscription_fetch_costs_response.rbs +78 -0
- data/sig/orb/models/subscription_fetch_params.rbs +14 -0
- data/sig/orb/models/subscription_fetch_schedule_params.rbs +45 -0
- data/sig/orb/models/subscription_fetch_schedule_response.rbs +48 -0
- data/sig/orb/models/subscription_fetch_usage_params.rbs +80 -0
- data/sig/orb/models/subscription_list_params.rbs +69 -0
- data/sig/orb/models/subscription_price_intervals_params.rbs +5117 -0
- data/sig/orb/models/subscription_price_intervals_response.rbs +687 -0
- data/sig/orb/models/subscription_schedule_plan_change_params.rbs +9133 -0
- data/sig/orb/models/subscription_schedule_plan_change_response.rbs +687 -0
- data/sig/orb/models/subscription_trigger_phase_params.rbs +24 -0
- data/sig/orb/models/subscription_trigger_phase_response.rbs +687 -0
- data/sig/orb/models/subscription_unschedule_cancellation_params.rbs +15 -0
- data/sig/orb/models/subscription_unschedule_cancellation_response.rbs +687 -0
- data/sig/orb/models/subscription_unschedule_fixed_fee_quantity_updates_params.rbs +20 -0
- data/sig/orb/models/subscription_unschedule_fixed_fee_quantity_updates_response.rbs +687 -0
- data/sig/orb/models/subscription_unschedule_pending_plan_changes_params.rbs +15 -0
- data/sig/orb/models/subscription_unschedule_pending_plan_changes_response.rbs +687 -0
- data/sig/orb/models/subscription_update_fixed_fee_quantity_params.rbs +55 -0
- data/sig/orb/models/subscription_update_fixed_fee_quantity_response.rbs +687 -0
- data/sig/orb/models/subscription_update_params.rbs +39 -0
- data/sig/orb/models/subscription_update_trial_params.rbs +39 -0
- data/sig/orb/models/subscription_update_trial_response.rbs +687 -0
- data/sig/orb/models/subscription_usage.rbs +196 -0
- data/sig/orb/models/subscriptions.rbs +22 -0
- data/sig/orb/models/top_level_ping_params.rbs +14 -0
- data/sig/orb/models/top_level_ping_response.rbs +13 -0
- data/sig/orb/models/trial_discount.rbs +44 -0
- data/sig/orb/models/usage_discount.rbs +40 -0
- data/sig/orb/page.rbs +22 -0
- data/sig/orb/request_options.rbs +32 -0
- data/sig/orb/resources/alerts.rbs +67 -0
- data/sig/orb/resources/coupons/subscriptions.rbs +16 -0
- data/sig/orb/resources/coupons.rbs +35 -0
- data/sig/orb/resources/credit_notes.rbs +29 -0
- data/sig/orb/resources/customers/balance_transactions.rbs +28 -0
- data/sig/orb/resources/customers/costs.rbs +27 -0
- data/sig/orb/resources/customers/credits/ledger.rbs +75 -0
- data/sig/orb/resources/customers/credits/top_ups.rbs +63 -0
- data/sig/orb/resources/customers/credits.rbs +31 -0
- data/sig/orb/resources/customers.rbs +114 -0
- data/sig/orb/resources/dimensional_price_groups/external_dimensional_price_group_id.rbs +14 -0
- data/sig/orb/resources/dimensional_price_groups.rbs +29 -0
- data/sig/orb/resources/events/backfills.rbs +41 -0
- data/sig/orb/resources/events/volume.rbs +17 -0
- data/sig/orb/resources/events.rbs +40 -0
- data/sig/orb/resources/invoice_line_items.rbs +17 -0
- data/sig/orb/resources/invoices.rbs +84 -0
- data/sig/orb/resources/items.rbs +30 -0
- data/sig/orb/resources/metrics.rbs +37 -0
- data/sig/orb/resources/plans/external_plan_id.rbs +21 -0
- data/sig/orb/resources/plans.rbs +44 -0
- data/sig/orb/resources/prices/external_price_id.rbs +20 -0
- data/sig/orb/resources/prices.rbs +83 -0
- data/sig/orb/resources/subscriptions.rbs +194 -0
- data/sig/orb/resources/top_level.rbs +11 -0
- data/sig/orb/transport/base_client.rbs +110 -0
- data/sig/orb/transport/pooled_net_requester.rbs +39 -0
- data/sig/orb/type/array_of.rbs +36 -0
- data/sig/orb/type/base_model.rbs +77 -0
- data/sig/orb/type/base_page.rbs +22 -0
- data/sig/orb/type/boolean_model.rbs +18 -0
- data/sig/orb/type/converter.rbs +36 -0
- data/sig/orb/type/enum.rbs +22 -0
- data/sig/orb/type/hash_of.rbs +36 -0
- data/sig/orb/type/request_parameters.rbs +13 -0
- data/sig/orb/type/union.rbs +37 -0
- data/sig/orb/type/unknown.rbs +15 -0
- data/sig/orb/type.rbs +22 -0
- data/sig/orb/util.rbs +132 -0
- data/sig/orb/version.rbs +3 -0
- metadata +692 -0
@@ -0,0 +1,192 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
module Orb
|
4
|
+
module Resources
|
5
|
+
class Customers
|
6
|
+
class Credits
|
7
|
+
class TopUps
|
8
|
+
# This endpoint allows you to create a new top-up for a specified customer's
|
9
|
+
# balance. While this top-up is active, the customer's balance will added in
|
10
|
+
# increments of the specified amount whenever the balance reaches the specified
|
11
|
+
# threshold.
|
12
|
+
#
|
13
|
+
# If a top-up already exists for this customer in the same currency, the existing
|
14
|
+
# top-up will be replaced.
|
15
|
+
#
|
16
|
+
# @overload create(customer_id, amount:, currency:, invoice_settings:, per_unit_cost_basis:, threshold:, active_from: nil, expires_after: nil, expires_after_unit: nil, request_options: {})
|
17
|
+
#
|
18
|
+
# @param customer_id [String]
|
19
|
+
# @param amount [String]
|
20
|
+
# @param currency [String]
|
21
|
+
# @param invoice_settings [Orb::Models::Customers::Credits::TopUpCreateParams::InvoiceSettings]
|
22
|
+
# @param per_unit_cost_basis [String]
|
23
|
+
# @param threshold [String]
|
24
|
+
# @param active_from [Time, nil]
|
25
|
+
# @param expires_after [Integer, nil]
|
26
|
+
# @param expires_after_unit [Symbol, Orb::Models::Customers::Credits::TopUpCreateParams::ExpiresAfterUnit, nil]
|
27
|
+
# @param request_options [Orb::RequestOptions, Hash{Symbol=>Object}, nil]
|
28
|
+
#
|
29
|
+
# @return [Orb::Models::Customers::Credits::TopUpCreateResponse]
|
30
|
+
#
|
31
|
+
# @see Orb::Models::Customers::Credits::TopUpCreateParams
|
32
|
+
def create(customer_id, params)
|
33
|
+
parsed, options = Orb::Models::Customers::Credits::TopUpCreateParams.dump_request(params)
|
34
|
+
@client.request(
|
35
|
+
method: :post,
|
36
|
+
path: ["customers/%1$s/credits/top_ups", customer_id],
|
37
|
+
body: parsed,
|
38
|
+
model: Orb::Models::Customers::Credits::TopUpCreateResponse,
|
39
|
+
options: options
|
40
|
+
)
|
41
|
+
end
|
42
|
+
|
43
|
+
# List top-ups
|
44
|
+
#
|
45
|
+
# @overload list(customer_id, cursor: nil, limit: nil, request_options: {})
|
46
|
+
#
|
47
|
+
# @param customer_id [String]
|
48
|
+
# @param cursor [String, nil]
|
49
|
+
# @param limit [Integer]
|
50
|
+
# @param request_options [Orb::RequestOptions, Hash{Symbol=>Object}, nil]
|
51
|
+
#
|
52
|
+
# @return [Orb::Page<Orb::Models::Customers::Credits::TopUpListResponse>]
|
53
|
+
#
|
54
|
+
# @see Orb::Models::Customers::Credits::TopUpListParams
|
55
|
+
def list(customer_id, params = {})
|
56
|
+
parsed, options = Orb::Models::Customers::Credits::TopUpListParams.dump_request(params)
|
57
|
+
@client.request(
|
58
|
+
method: :get,
|
59
|
+
path: ["customers/%1$s/credits/top_ups", customer_id],
|
60
|
+
query: parsed,
|
61
|
+
page: Orb::Page,
|
62
|
+
model: Orb::Models::Customers::Credits::TopUpListResponse,
|
63
|
+
options: options
|
64
|
+
)
|
65
|
+
end
|
66
|
+
|
67
|
+
# This deactivates the top-up and voids any invoices associated with pending
|
68
|
+
# credit blocks purchased through the top-up.
|
69
|
+
#
|
70
|
+
# @overload delete(top_up_id, customer_id:, request_options: {})
|
71
|
+
#
|
72
|
+
# @param top_up_id [String]
|
73
|
+
# @param customer_id [String]
|
74
|
+
# @param request_options [Orb::RequestOptions, Hash{Symbol=>Object}, nil]
|
75
|
+
#
|
76
|
+
# @return [nil]
|
77
|
+
#
|
78
|
+
# @see Orb::Models::Customers::Credits::TopUpDeleteParams
|
79
|
+
def delete(top_up_id, params)
|
80
|
+
parsed, options = Orb::Models::Customers::Credits::TopUpDeleteParams.dump_request(params)
|
81
|
+
customer_id =
|
82
|
+
parsed.delete(:customer_id) do
|
83
|
+
raise ArgumentError.new("missing required path argument #{_1}")
|
84
|
+
end
|
85
|
+
@client.request(
|
86
|
+
method: :delete,
|
87
|
+
path: ["customers/%1$s/credits/top_ups/%2$s", customer_id, top_up_id],
|
88
|
+
model: NilClass,
|
89
|
+
options: options
|
90
|
+
)
|
91
|
+
end
|
92
|
+
|
93
|
+
# This endpoint allows you to create a new top-up for a specified customer's
|
94
|
+
# balance. While this top-up is active, the customer's balance will added in
|
95
|
+
# increments of the specified amount whenever the balance reaches the specified
|
96
|
+
# threshold.
|
97
|
+
#
|
98
|
+
# If a top-up already exists for this customer in the same currency, the existing
|
99
|
+
# top-up will be replaced.
|
100
|
+
#
|
101
|
+
# @overload create_by_external_id(external_customer_id, amount:, currency:, invoice_settings:, per_unit_cost_basis:, threshold:, active_from: nil, expires_after: nil, expires_after_unit: nil, request_options: {})
|
102
|
+
#
|
103
|
+
# @param external_customer_id [String]
|
104
|
+
# @param amount [String]
|
105
|
+
# @param currency [String]
|
106
|
+
# @param invoice_settings [Orb::Models::Customers::Credits::TopUpCreateByExternalIDParams::InvoiceSettings]
|
107
|
+
# @param per_unit_cost_basis [String]
|
108
|
+
# @param threshold [String]
|
109
|
+
# @param active_from [Time, nil]
|
110
|
+
# @param expires_after [Integer, nil]
|
111
|
+
# @param expires_after_unit [Symbol, Orb::Models::Customers::Credits::TopUpCreateByExternalIDParams::ExpiresAfterUnit, nil]
|
112
|
+
# @param request_options [Orb::RequestOptions, Hash{Symbol=>Object}, nil]
|
113
|
+
#
|
114
|
+
# @return [Orb::Models::Customers::Credits::TopUpCreateByExternalIDResponse]
|
115
|
+
#
|
116
|
+
# @see Orb::Models::Customers::Credits::TopUpCreateByExternalIDParams
|
117
|
+
def create_by_external_id(external_customer_id, params)
|
118
|
+
parsed, options = Orb::Models::Customers::Credits::TopUpCreateByExternalIDParams.dump_request(params)
|
119
|
+
@client.request(
|
120
|
+
method: :post,
|
121
|
+
path: ["customers/external_customer_id/%1$s/credits/top_ups", external_customer_id],
|
122
|
+
body: parsed,
|
123
|
+
model: Orb::Models::Customers::Credits::TopUpCreateByExternalIDResponse,
|
124
|
+
options: options
|
125
|
+
)
|
126
|
+
end
|
127
|
+
|
128
|
+
# This deactivates the top-up and voids any invoices associated with pending
|
129
|
+
# credit blocks purchased through the top-up.
|
130
|
+
#
|
131
|
+
# @overload delete_by_external_id(top_up_id, external_customer_id:, request_options: {})
|
132
|
+
#
|
133
|
+
# @param top_up_id [String]
|
134
|
+
# @param external_customer_id [String]
|
135
|
+
# @param request_options [Orb::RequestOptions, Hash{Symbol=>Object}, nil]
|
136
|
+
#
|
137
|
+
# @return [nil]
|
138
|
+
#
|
139
|
+
# @see Orb::Models::Customers::Credits::TopUpDeleteByExternalIDParams
|
140
|
+
def delete_by_external_id(top_up_id, params)
|
141
|
+
parsed, options = Orb::Models::Customers::Credits::TopUpDeleteByExternalIDParams.dump_request(params)
|
142
|
+
external_customer_id =
|
143
|
+
parsed.delete(:external_customer_id) do
|
144
|
+
raise ArgumentError.new("missing required path argument #{_1}")
|
145
|
+
end
|
146
|
+
@client.request(
|
147
|
+
method: :delete,
|
148
|
+
path: [
|
149
|
+
"customers/external_customer_id/%1$s/credits/top_ups/%2$s",
|
150
|
+
external_customer_id,
|
151
|
+
top_up_id
|
152
|
+
],
|
153
|
+
model: NilClass,
|
154
|
+
options: options
|
155
|
+
)
|
156
|
+
end
|
157
|
+
|
158
|
+
# List top-ups by external ID
|
159
|
+
#
|
160
|
+
# @overload list_by_external_id(external_customer_id, cursor: nil, limit: nil, request_options: {})
|
161
|
+
#
|
162
|
+
# @param external_customer_id [String]
|
163
|
+
# @param cursor [String, nil]
|
164
|
+
# @param limit [Integer]
|
165
|
+
# @param request_options [Orb::RequestOptions, Hash{Symbol=>Object}, nil]
|
166
|
+
#
|
167
|
+
# @return [Orb::Page<Orb::Models::Customers::Credits::TopUpListByExternalIDResponse>]
|
168
|
+
#
|
169
|
+
# @see Orb::Models::Customers::Credits::TopUpListByExternalIDParams
|
170
|
+
def list_by_external_id(external_customer_id, params = {})
|
171
|
+
parsed, options = Orb::Models::Customers::Credits::TopUpListByExternalIDParams.dump_request(params)
|
172
|
+
@client.request(
|
173
|
+
method: :get,
|
174
|
+
path: ["customers/external_customer_id/%1$s/credits/top_ups", external_customer_id],
|
175
|
+
query: parsed,
|
176
|
+
page: Orb::Page,
|
177
|
+
model: Orb::Models::Customers::Credits::TopUpListByExternalIDResponse,
|
178
|
+
options: options
|
179
|
+
)
|
180
|
+
end
|
181
|
+
|
182
|
+
# @api private
|
183
|
+
#
|
184
|
+
# @param client [Orb::Client]
|
185
|
+
def initialize(client:)
|
186
|
+
@client = client
|
187
|
+
end
|
188
|
+
end
|
189
|
+
end
|
190
|
+
end
|
191
|
+
end
|
192
|
+
end
|
@@ -0,0 +1,88 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
module Orb
|
4
|
+
module Resources
|
5
|
+
class Customers
|
6
|
+
class Credits
|
7
|
+
# @return [Orb::Resources::Customers::Credits::Ledger]
|
8
|
+
attr_reader :ledger
|
9
|
+
|
10
|
+
# @return [Orb::Resources::Customers::Credits::TopUps]
|
11
|
+
attr_reader :top_ups
|
12
|
+
|
13
|
+
# Returns a paginated list of unexpired, non-zero credit blocks for a customer.
|
14
|
+
#
|
15
|
+
# If `include_all_blocks` is set to `true`, all credit blocks (including expired
|
16
|
+
# and depleted blocks) will be included in the response.
|
17
|
+
#
|
18
|
+
# Note that `currency` defaults to credits if not specified. To use a real world
|
19
|
+
# currency, set `currency` to an ISO 4217 string.
|
20
|
+
#
|
21
|
+
# @overload list(customer_id, currency: nil, cursor: nil, include_all_blocks: nil, limit: nil, request_options: {})
|
22
|
+
#
|
23
|
+
# @param customer_id [String]
|
24
|
+
# @param currency [String, nil]
|
25
|
+
# @param cursor [String, nil]
|
26
|
+
# @param include_all_blocks [Boolean]
|
27
|
+
# @param limit [Integer]
|
28
|
+
# @param request_options [Orb::RequestOptions, Hash{Symbol=>Object}, nil]
|
29
|
+
#
|
30
|
+
# @return [Orb::Page<Orb::Models::Customers::CreditListResponse>]
|
31
|
+
#
|
32
|
+
# @see Orb::Models::Customers::CreditListParams
|
33
|
+
def list(customer_id, params = {})
|
34
|
+
parsed, options = Orb::Models::Customers::CreditListParams.dump_request(params)
|
35
|
+
@client.request(
|
36
|
+
method: :get,
|
37
|
+
path: ["customers/%1$s/credits", customer_id],
|
38
|
+
query: parsed,
|
39
|
+
page: Orb::Page,
|
40
|
+
model: Orb::Models::Customers::CreditListResponse,
|
41
|
+
options: options
|
42
|
+
)
|
43
|
+
end
|
44
|
+
|
45
|
+
# Returns a paginated list of unexpired, non-zero credit blocks for a customer.
|
46
|
+
#
|
47
|
+
# If `include_all_blocks` is set to `true`, all credit blocks (including expired
|
48
|
+
# and depleted blocks) will be included in the response.
|
49
|
+
#
|
50
|
+
# Note that `currency` defaults to credits if not specified. To use a real world
|
51
|
+
# currency, set `currency` to an ISO 4217 string.
|
52
|
+
#
|
53
|
+
# @overload list_by_external_id(external_customer_id, currency: nil, cursor: nil, include_all_blocks: nil, limit: nil, request_options: {})
|
54
|
+
#
|
55
|
+
# @param external_customer_id [String]
|
56
|
+
# @param currency [String, nil]
|
57
|
+
# @param cursor [String, nil]
|
58
|
+
# @param include_all_blocks [Boolean]
|
59
|
+
# @param limit [Integer]
|
60
|
+
# @param request_options [Orb::RequestOptions, Hash{Symbol=>Object}, nil]
|
61
|
+
#
|
62
|
+
# @return [Orb::Page<Orb::Models::Customers::CreditListByExternalIDResponse>]
|
63
|
+
#
|
64
|
+
# @see Orb::Models::Customers::CreditListByExternalIDParams
|
65
|
+
def list_by_external_id(external_customer_id, params = {})
|
66
|
+
parsed, options = Orb::Models::Customers::CreditListByExternalIDParams.dump_request(params)
|
67
|
+
@client.request(
|
68
|
+
method: :get,
|
69
|
+
path: ["customers/external_customer_id/%1$s/credits", external_customer_id],
|
70
|
+
query: parsed,
|
71
|
+
page: Orb::Page,
|
72
|
+
model: Orb::Models::Customers::CreditListByExternalIDResponse,
|
73
|
+
options: options
|
74
|
+
)
|
75
|
+
end
|
76
|
+
|
77
|
+
# @api private
|
78
|
+
#
|
79
|
+
# @param client [Orb::Client]
|
80
|
+
def initialize(client:)
|
81
|
+
@client = client
|
82
|
+
@ledger = Orb::Resources::Customers::Credits::Ledger.new(client: client)
|
83
|
+
@top_ups = Orb::Resources::Customers::Credits::TopUps.new(client: client)
|
84
|
+
end
|
85
|
+
end
|
86
|
+
end
|
87
|
+
end
|
88
|
+
end
|
@@ -0,0 +1,321 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
module Orb
|
4
|
+
module Resources
|
5
|
+
class Customers
|
6
|
+
# @return [Orb::Resources::Customers::Costs]
|
7
|
+
attr_reader :costs
|
8
|
+
|
9
|
+
# @return [Orb::Resources::Customers::Credits]
|
10
|
+
attr_reader :credits
|
11
|
+
|
12
|
+
# @return [Orb::Resources::Customers::BalanceTransactions]
|
13
|
+
attr_reader :balance_transactions
|
14
|
+
|
15
|
+
# This operation is used to create an Orb customer, who is party to the core
|
16
|
+
# billing relationship. See [Customer](/core-concepts##customer) for an overview
|
17
|
+
# of the customer resource.
|
18
|
+
#
|
19
|
+
# This endpoint is critical in the following Orb functionality:
|
20
|
+
#
|
21
|
+
# - Automated charges can be configured by setting `payment_provider` and
|
22
|
+
# `payment_provider_id` to automatically issue invoices
|
23
|
+
# - [Customer ID Aliases](/events-and-metrics/customer-aliases) can be configured
|
24
|
+
# by setting `external_customer_id`
|
25
|
+
# - [Timezone localization](/essentials/timezones) can be configured on a
|
26
|
+
# per-customer basis by setting the `timezone` parameter
|
27
|
+
#
|
28
|
+
# @overload create(email:, name:, accounting_sync_configuration: nil, additional_emails: nil, auto_collection: nil, billing_address: nil, currency: nil, email_delivery: nil, external_customer_id: nil, hierarchy: nil, metadata: nil, payment_provider: nil, payment_provider_id: nil, reporting_configuration: nil, shipping_address: nil, tax_configuration: nil, tax_id: nil, timezone: nil, request_options: {})
|
29
|
+
#
|
30
|
+
# @param email [String]
|
31
|
+
# @param name [String]
|
32
|
+
# @param accounting_sync_configuration [Orb::Models::CustomerCreateParams::AccountingSyncConfiguration, nil]
|
33
|
+
# @param additional_emails [Array<String>, nil]
|
34
|
+
# @param auto_collection [Boolean, nil]
|
35
|
+
# @param billing_address [Orb::Models::CustomerCreateParams::BillingAddress, nil]
|
36
|
+
# @param currency [String, nil]
|
37
|
+
# @param email_delivery [Boolean, nil]
|
38
|
+
# @param external_customer_id [String, nil]
|
39
|
+
# @param hierarchy [Orb::Models::CustomerCreateParams::Hierarchy, nil]
|
40
|
+
# @param metadata [Hash{Symbol=>String, nil}, nil]
|
41
|
+
# @param payment_provider [Symbol, Orb::Models::CustomerCreateParams::PaymentProvider, nil]
|
42
|
+
# @param payment_provider_id [String, nil]
|
43
|
+
# @param reporting_configuration [Orb::Models::CustomerCreateParams::ReportingConfiguration, nil]
|
44
|
+
# @param shipping_address [Orb::Models::CustomerCreateParams::ShippingAddress, nil]
|
45
|
+
# @param tax_configuration [Orb::Models::CustomerCreateParams::TaxConfiguration::NewAvalaraTaxConfiguration, Orb::Models::CustomerCreateParams::TaxConfiguration::NewTaxJarConfiguration, nil]
|
46
|
+
# @param tax_id [Orb::Models::CustomerCreateParams::TaxID, nil]
|
47
|
+
# @param timezone [String, nil]
|
48
|
+
# @param request_options [Orb::RequestOptions, Hash{Symbol=>Object}, nil]
|
49
|
+
#
|
50
|
+
# @return [Orb::Models::Customer]
|
51
|
+
#
|
52
|
+
# @see Orb::Models::CustomerCreateParams
|
53
|
+
def create(params)
|
54
|
+
parsed, options = Orb::Models::CustomerCreateParams.dump_request(params)
|
55
|
+
@client.request(
|
56
|
+
method: :post,
|
57
|
+
path: "customers",
|
58
|
+
body: parsed,
|
59
|
+
model: Orb::Models::Customer,
|
60
|
+
options: options
|
61
|
+
)
|
62
|
+
end
|
63
|
+
|
64
|
+
# This endpoint can be used to update the `payment_provider`,
|
65
|
+
# `payment_provider_id`, `name`, `email`, `email_delivery`, `tax_id`,
|
66
|
+
# `auto_collection`, `metadata`, `shipping_address`, `billing_address`, and
|
67
|
+
# `additional_emails` of an existing customer. Other fields on a customer are
|
68
|
+
# currently immutable.
|
69
|
+
#
|
70
|
+
# @overload update(customer_id, accounting_sync_configuration: nil, additional_emails: nil, auto_collection: nil, billing_address: nil, currency: nil, email: nil, email_delivery: nil, external_customer_id: nil, hierarchy: nil, metadata: nil, name: nil, payment_provider: nil, payment_provider_id: nil, reporting_configuration: nil, shipping_address: nil, tax_configuration: nil, tax_id: nil, request_options: {})
|
71
|
+
#
|
72
|
+
# @param customer_id [String]
|
73
|
+
# @param accounting_sync_configuration [Orb::Models::CustomerUpdateParams::AccountingSyncConfiguration, nil]
|
74
|
+
# @param additional_emails [Array<String>, nil]
|
75
|
+
# @param auto_collection [Boolean, nil]
|
76
|
+
# @param billing_address [Orb::Models::CustomerUpdateParams::BillingAddress, nil]
|
77
|
+
# @param currency [String, nil]
|
78
|
+
# @param email [String, nil]
|
79
|
+
# @param email_delivery [Boolean, nil]
|
80
|
+
# @param external_customer_id [String, nil]
|
81
|
+
# @param hierarchy [Orb::Models::CustomerUpdateParams::Hierarchy, nil]
|
82
|
+
# @param metadata [Hash{Symbol=>String, nil}, nil]
|
83
|
+
# @param name [String, nil]
|
84
|
+
# @param payment_provider [Symbol, Orb::Models::CustomerUpdateParams::PaymentProvider, nil]
|
85
|
+
# @param payment_provider_id [String, nil]
|
86
|
+
# @param reporting_configuration [Orb::Models::CustomerUpdateParams::ReportingConfiguration, nil]
|
87
|
+
# @param shipping_address [Orb::Models::CustomerUpdateParams::ShippingAddress, nil]
|
88
|
+
# @param tax_configuration [Orb::Models::CustomerUpdateParams::TaxConfiguration::NewAvalaraTaxConfiguration, Orb::Models::CustomerUpdateParams::TaxConfiguration::NewTaxJarConfiguration, nil]
|
89
|
+
# @param tax_id [Orb::Models::CustomerUpdateParams::TaxID, nil]
|
90
|
+
# @param request_options [Orb::RequestOptions, Hash{Symbol=>Object}, nil]
|
91
|
+
#
|
92
|
+
# @return [Orb::Models::Customer]
|
93
|
+
#
|
94
|
+
# @see Orb::Models::CustomerUpdateParams
|
95
|
+
def update(customer_id, params = {})
|
96
|
+
parsed, options = Orb::Models::CustomerUpdateParams.dump_request(params)
|
97
|
+
@client.request(
|
98
|
+
method: :put,
|
99
|
+
path: ["customers/%1$s", customer_id],
|
100
|
+
body: parsed,
|
101
|
+
model: Orb::Models::Customer,
|
102
|
+
options: options
|
103
|
+
)
|
104
|
+
end
|
105
|
+
|
106
|
+
# This endpoint returns a list of all customers for an account. The list of
|
107
|
+
# customers is ordered starting from the most recently created customer. This
|
108
|
+
# endpoint follows Orb's
|
109
|
+
# [standardized pagination format](/api-reference/pagination).
|
110
|
+
#
|
111
|
+
# See [Customer](/core-concepts##customer) for an overview of the customer model.
|
112
|
+
#
|
113
|
+
# @overload list(created_at_gt: nil, created_at_gte: nil, created_at_lt: nil, created_at_lte: nil, cursor: nil, limit: nil, request_options: {})
|
114
|
+
#
|
115
|
+
# @param created_at_gt [Time, nil]
|
116
|
+
# @param created_at_gte [Time, nil]
|
117
|
+
# @param created_at_lt [Time, nil]
|
118
|
+
# @param created_at_lte [Time, nil]
|
119
|
+
# @param cursor [String, nil]
|
120
|
+
# @param limit [Integer]
|
121
|
+
# @param request_options [Orb::RequestOptions, Hash{Symbol=>Object}, nil]
|
122
|
+
#
|
123
|
+
# @return [Orb::Page<Orb::Models::Customer>]
|
124
|
+
#
|
125
|
+
# @see Orb::Models::CustomerListParams
|
126
|
+
def list(params = {})
|
127
|
+
parsed, options = Orb::Models::CustomerListParams.dump_request(params)
|
128
|
+
@client.request(
|
129
|
+
method: :get,
|
130
|
+
path: "customers",
|
131
|
+
query: parsed,
|
132
|
+
page: Orb::Page,
|
133
|
+
model: Orb::Models::Customer,
|
134
|
+
options: options
|
135
|
+
)
|
136
|
+
end
|
137
|
+
|
138
|
+
# This performs a deletion of this customer, its subscriptions, and its invoices,
|
139
|
+
# provided the customer does not have any issued invoices. Customers with issued
|
140
|
+
# invoices cannot be deleted. This operation is irreversible. Note that this is a
|
141
|
+
# _soft_ deletion, but the data will be inaccessible through the API and Orb
|
142
|
+
# dashboard.
|
143
|
+
#
|
144
|
+
# For a hard-deletion, please reach out to the Orb team directly.
|
145
|
+
#
|
146
|
+
# **Note**: This operation happens asynchronously and can be expected to take a
|
147
|
+
# few minutes to propagate to related resources. However, querying for the
|
148
|
+
# customer on subsequent GET requests while deletion is in process will reflect
|
149
|
+
# its deletion with a `deleted: true` property. Once the customer deletion has
|
150
|
+
# been fully processed, the customer will not be returned in the API.
|
151
|
+
#
|
152
|
+
# On successful processing, this returns an empty dictionary (`{}`) in the API.
|
153
|
+
#
|
154
|
+
# @overload delete(customer_id, request_options: {})
|
155
|
+
#
|
156
|
+
# @param customer_id [String]
|
157
|
+
# @param request_options [Orb::RequestOptions, Hash{Symbol=>Object}, nil]
|
158
|
+
#
|
159
|
+
# @return [nil]
|
160
|
+
#
|
161
|
+
# @see Orb::Models::CustomerDeleteParams
|
162
|
+
def delete(customer_id, params = {})
|
163
|
+
@client.request(
|
164
|
+
method: :delete,
|
165
|
+
path: ["customers/%1$s", customer_id],
|
166
|
+
model: NilClass,
|
167
|
+
options: params[:request_options]
|
168
|
+
)
|
169
|
+
end
|
170
|
+
|
171
|
+
# This endpoint is used to fetch customer details given an identifier. If the
|
172
|
+
# `Customer` is in the process of being deleted, only the properties `id` and
|
173
|
+
# `deleted: true` will be returned.
|
174
|
+
#
|
175
|
+
# See the [Customer resource](/core-concepts#customer) for a full discussion of
|
176
|
+
# the Customer model.
|
177
|
+
#
|
178
|
+
# @overload fetch(customer_id, request_options: {})
|
179
|
+
#
|
180
|
+
# @param customer_id [String]
|
181
|
+
# @param request_options [Orb::RequestOptions, Hash{Symbol=>Object}, nil]
|
182
|
+
#
|
183
|
+
# @return [Orb::Models::Customer]
|
184
|
+
#
|
185
|
+
# @see Orb::Models::CustomerFetchParams
|
186
|
+
def fetch(customer_id, params = {})
|
187
|
+
@client.request(
|
188
|
+
method: :get,
|
189
|
+
path: ["customers/%1$s", customer_id],
|
190
|
+
model: Orb::Models::Customer,
|
191
|
+
options: params[:request_options]
|
192
|
+
)
|
193
|
+
end
|
194
|
+
|
195
|
+
# This endpoint is used to fetch customer details given an `external_customer_id`
|
196
|
+
# (see [Customer ID Aliases](/events-and-metrics/customer-aliases)).
|
197
|
+
#
|
198
|
+
# Note that the resource and semantics of this endpoint exactly mirror
|
199
|
+
# [Get Customer](fetch-customer).
|
200
|
+
#
|
201
|
+
# @overload fetch_by_external_id(external_customer_id, request_options: {})
|
202
|
+
#
|
203
|
+
# @param external_customer_id [String]
|
204
|
+
# @param request_options [Orb::RequestOptions, Hash{Symbol=>Object}, nil]
|
205
|
+
#
|
206
|
+
# @return [Orb::Models::Customer]
|
207
|
+
#
|
208
|
+
# @see Orb::Models::CustomerFetchByExternalIDParams
|
209
|
+
def fetch_by_external_id(external_customer_id, params = {})
|
210
|
+
@client.request(
|
211
|
+
method: :get,
|
212
|
+
path: ["customers/external_customer_id/%1$s", external_customer_id],
|
213
|
+
model: Orb::Models::Customer,
|
214
|
+
options: params[:request_options]
|
215
|
+
)
|
216
|
+
end
|
217
|
+
|
218
|
+
# Sync Orb's payment methods for the customer with their gateway.
|
219
|
+
#
|
220
|
+
# This method can be called before taking an action that may cause the customer to
|
221
|
+
# be charged, ensuring that the most up-to-date payment method is charged.
|
222
|
+
#
|
223
|
+
# **Note**: This functionality is currently only available for Stripe.
|
224
|
+
#
|
225
|
+
# @overload sync_payment_methods_from_gateway(external_customer_id, request_options: {})
|
226
|
+
#
|
227
|
+
# @param external_customer_id [String]
|
228
|
+
# @param request_options [Orb::RequestOptions, Hash{Symbol=>Object}, nil]
|
229
|
+
#
|
230
|
+
# @return [nil]
|
231
|
+
#
|
232
|
+
# @see Orb::Models::CustomerSyncPaymentMethodsFromGatewayParams
|
233
|
+
def sync_payment_methods_from_gateway(external_customer_id, params = {})
|
234
|
+
@client.request(
|
235
|
+
method: :post,
|
236
|
+
path: [
|
237
|
+
"customers/external_customer_id/%1$s/sync_payment_methods_from_gateway",
|
238
|
+
external_customer_id
|
239
|
+
],
|
240
|
+
model: NilClass,
|
241
|
+
options: params[:request_options]
|
242
|
+
)
|
243
|
+
end
|
244
|
+
|
245
|
+
# Sync Orb's payment methods for the customer with their gateway.
|
246
|
+
#
|
247
|
+
# This method can be called before taking an action that may cause the customer to
|
248
|
+
# be charged, ensuring that the most up-to-date payment method is charged.
|
249
|
+
#
|
250
|
+
# **Note**: This functionality is currently only available for Stripe.
|
251
|
+
#
|
252
|
+
# @overload sync_payment_methods_from_gateway_by_external_customer_id(customer_id, request_options: {})
|
253
|
+
#
|
254
|
+
# @param customer_id [String]
|
255
|
+
# @param request_options [Orb::RequestOptions, Hash{Symbol=>Object}, nil]
|
256
|
+
#
|
257
|
+
# @return [nil]
|
258
|
+
#
|
259
|
+
# @see Orb::Models::CustomerSyncPaymentMethodsFromGatewayByExternalCustomerIDParams
|
260
|
+
def sync_payment_methods_from_gateway_by_external_customer_id(customer_id, params = {})
|
261
|
+
@client.request(
|
262
|
+
method: :post,
|
263
|
+
path: ["customers/%1$s/sync_payment_methods_from_gateway", customer_id],
|
264
|
+
model: NilClass,
|
265
|
+
options: params[:request_options]
|
266
|
+
)
|
267
|
+
end
|
268
|
+
|
269
|
+
# This endpoint is used to update customer details given an `external_customer_id`
|
270
|
+
# (see [Customer ID Aliases](/events-and-metrics/customer-aliases)). Note that the
|
271
|
+
# resource and semantics of this endpoint exactly mirror
|
272
|
+
# [Update Customer](update-customer).
|
273
|
+
#
|
274
|
+
# @overload update_by_external_id(id, accounting_sync_configuration: nil, additional_emails: nil, auto_collection: nil, billing_address: nil, currency: nil, email: nil, email_delivery: nil, external_customer_id: nil, hierarchy: nil, metadata: nil, name: nil, payment_provider: nil, payment_provider_id: nil, reporting_configuration: nil, shipping_address: nil, tax_configuration: nil, tax_id: nil, request_options: {})
|
275
|
+
#
|
276
|
+
# @param id [String]
|
277
|
+
# @param accounting_sync_configuration [Orb::Models::CustomerUpdateByExternalIDParams::AccountingSyncConfiguration, nil]
|
278
|
+
# @param additional_emails [Array<String>, nil]
|
279
|
+
# @param auto_collection [Boolean, nil]
|
280
|
+
# @param billing_address [Orb::Models::CustomerUpdateByExternalIDParams::BillingAddress, nil]
|
281
|
+
# @param currency [String, nil]
|
282
|
+
# @param email [String, nil]
|
283
|
+
# @param email_delivery [Boolean, nil]
|
284
|
+
# @param external_customer_id [String, nil]
|
285
|
+
# @param hierarchy [Orb::Models::CustomerUpdateByExternalIDParams::Hierarchy, nil]
|
286
|
+
# @param metadata [Hash{Symbol=>String, nil}, nil]
|
287
|
+
# @param name [String, nil]
|
288
|
+
# @param payment_provider [Symbol, Orb::Models::CustomerUpdateByExternalIDParams::PaymentProvider, nil]
|
289
|
+
# @param payment_provider_id [String, nil]
|
290
|
+
# @param reporting_configuration [Orb::Models::CustomerUpdateByExternalIDParams::ReportingConfiguration, nil]
|
291
|
+
# @param shipping_address [Orb::Models::CustomerUpdateByExternalIDParams::ShippingAddress, nil]
|
292
|
+
# @param tax_configuration [Orb::Models::CustomerUpdateByExternalIDParams::TaxConfiguration::NewAvalaraTaxConfiguration, Orb::Models::CustomerUpdateByExternalIDParams::TaxConfiguration::NewTaxJarConfiguration, nil]
|
293
|
+
# @param tax_id [Orb::Models::CustomerUpdateByExternalIDParams::TaxID, nil]
|
294
|
+
# @param request_options [Orb::RequestOptions, Hash{Symbol=>Object}, nil]
|
295
|
+
#
|
296
|
+
# @return [Orb::Models::Customer]
|
297
|
+
#
|
298
|
+
# @see Orb::Models::CustomerUpdateByExternalIDParams
|
299
|
+
def update_by_external_id(id, params = {})
|
300
|
+
parsed, options = Orb::Models::CustomerUpdateByExternalIDParams.dump_request(params)
|
301
|
+
@client.request(
|
302
|
+
method: :put,
|
303
|
+
path: ["customers/external_customer_id/%1$s", id],
|
304
|
+
body: parsed,
|
305
|
+
model: Orb::Models::Customer,
|
306
|
+
options: options
|
307
|
+
)
|
308
|
+
end
|
309
|
+
|
310
|
+
# @api private
|
311
|
+
#
|
312
|
+
# @param client [Orb::Client]
|
313
|
+
def initialize(client:)
|
314
|
+
@client = client
|
315
|
+
@costs = Orb::Resources::Customers::Costs.new(client: client)
|
316
|
+
@credits = Orb::Resources::Customers::Credits.new(client: client)
|
317
|
+
@balance_transactions = Orb::Resources::Customers::BalanceTransactions.new(client: client)
|
318
|
+
end
|
319
|
+
end
|
320
|
+
end
|
321
|
+
end
|
@@ -0,0 +1,38 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
module Orb
|
4
|
+
module Resources
|
5
|
+
class DimensionalPriceGroups
|
6
|
+
class ExternalDimensionalPriceGroupID
|
7
|
+
# Fetch dimensional price group by external ID
|
8
|
+
#
|
9
|
+
# @overload retrieve(external_dimensional_price_group_id, request_options: {})
|
10
|
+
#
|
11
|
+
# @param external_dimensional_price_group_id [String]
|
12
|
+
# @param request_options [Orb::RequestOptions, Hash{Symbol=>Object}, nil]
|
13
|
+
#
|
14
|
+
# @return [Orb::Models::DimensionalPriceGroup]
|
15
|
+
#
|
16
|
+
# @see Orb::Models::DimensionalPriceGroups::ExternalDimensionalPriceGroupIDRetrieveParams
|
17
|
+
def retrieve(external_dimensional_price_group_id, params = {})
|
18
|
+
@client.request(
|
19
|
+
method: :get,
|
20
|
+
path: [
|
21
|
+
"dimensional_price_groups/external_dimensional_price_group_id/%1$s",
|
22
|
+
external_dimensional_price_group_id
|
23
|
+
],
|
24
|
+
model: Orb::Models::DimensionalPriceGroup,
|
25
|
+
options: params[:request_options]
|
26
|
+
)
|
27
|
+
end
|
28
|
+
|
29
|
+
# @api private
|
30
|
+
#
|
31
|
+
# @param client [Orb::Client]
|
32
|
+
def initialize(client:)
|
33
|
+
@client = client
|
34
|
+
end
|
35
|
+
end
|
36
|
+
end
|
37
|
+
end
|
38
|
+
end
|