stigg 0.1.0.pre.alpha.1 → 0.1.0.pre.alpha.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (124) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +14 -0
  3. data/README.md +29 -1
  4. data/lib/stigg/internal/my_cursor_id_page.rb +32 -4
  5. data/lib/stigg/models/v1/coupon_create_params.rb +2 -0
  6. data/lib/stigg/models/v1/coupon_create_response.rb +11 -6
  7. data/lib/stigg/models/v1/coupon_list_params.rb +14 -14
  8. data/lib/stigg/models/v1/coupon_list_response.rb +262 -278
  9. data/lib/stigg/models/v1/coupon_retrieve_response.rb +11 -6
  10. data/lib/stigg/models/v1/customer_create_params.rb +2 -0
  11. data/lib/stigg/models/v1/customer_list_params.rb +14 -14
  12. data/lib/stigg/models/v1/customer_list_response.rb +160 -174
  13. data/lib/stigg/models/v1/customer_response.rb +8 -1
  14. data/lib/stigg/models/v1/customer_update_params.rb +2 -0
  15. data/lib/stigg/models/v1/customers/payment_method_attach_params.rb +3 -1
  16. data/lib/stigg/models/v1/subscription_create_params.rb +1485 -6
  17. data/lib/stigg/models/v1/subscription_create_response.rb +703 -4
  18. data/lib/stigg/models/v1/subscription_delegate_params.rb +7 -2
  19. data/lib/stigg/models/v1/subscription_delegate_response.rb +42 -2
  20. data/lib/stigg/models/v1/subscription_list_params.rb +20 -24
  21. data/lib/stigg/models/v1/subscription_list_response.rb +255 -236
  22. data/lib/stigg/models/v1/subscription_migrate_params.rb +3 -3
  23. data/lib/stigg/models/v1/subscription_migrate_response.rb +42 -2
  24. data/lib/stigg/models/v1/subscription_preview_params.rb +139 -46
  25. data/lib/stigg/models/v1/subscription_preview_response.rb +164 -49
  26. data/lib/stigg/models/v1/subscription_retrieve_response.rb +42 -2
  27. data/lib/stigg/models/v1/subscription_transfer_params.rb +2 -6
  28. data/lib/stigg/models/v1/subscription_transfer_response.rb +42 -2
  29. data/lib/stigg/models/v1/subscriptions/future_update_cancel_pending_payment_response.rb +2 -0
  30. data/lib/stigg/models/v1/subscriptions/future_update_cancel_schedule_response.rb +2 -0
  31. data/lib/stigg/models/v1_create_event_params.rb +2 -0
  32. data/lib/stigg/models/v1_create_event_response.rb +8 -1
  33. data/lib/stigg/models/v1_create_usage_params.rb +19 -3
  34. data/lib/stigg/models/v1_create_usage_response.rb +7 -1
  35. data/lib/stigg/resources/v1/coupons.rb +12 -10
  36. data/lib/stigg/resources/v1/customers/payment_method.rb +6 -5
  37. data/lib/stigg/resources/v1/customers/usage.rb +0 -41
  38. data/lib/stigg/resources/v1/customers.rb +20 -20
  39. data/lib/stigg/resources/v1/subscriptions/future_update.rb +6 -4
  40. data/lib/stigg/resources/v1/subscriptions.rb +74 -49
  41. data/lib/stigg/resources/v1.rb +2 -2
  42. data/lib/stigg/version.rb +1 -1
  43. data/lib/stigg.rb +0 -7
  44. data/rbi/stigg/internal/my_cursor_id_page.rbi +27 -0
  45. data/rbi/stigg/models/v1/coupon_create_params.rbi +1 -0
  46. data/rbi/stigg/models/v1/coupon_create_response.rbi +11 -10
  47. data/rbi/stigg/models/v1/coupon_list_params.rbi +21 -21
  48. data/rbi/stigg/models/v1/coupon_list_response.rbi +812 -869
  49. data/rbi/stigg/models/v1/coupon_retrieve_response.rbi +11 -10
  50. data/rbi/stigg/models/v1/customer_create_params.rbi +1 -0
  51. data/rbi/stigg/models/v1/customer_list_params.rbi +21 -21
  52. data/rbi/stigg/models/v1/customer_list_response.rbi +307 -347
  53. data/rbi/stigg/models/v1/customer_response.rbi +8 -1
  54. data/rbi/stigg/models/v1/customer_update_params.rbi +1 -0
  55. data/rbi/stigg/models/v1/customers/payment_method_attach_params.rbi +3 -0
  56. data/rbi/stigg/models/v1/subscription_create_params.rbi +4975 -84
  57. data/rbi/stigg/models/v1/subscription_create_response.rbi +2508 -1
  58. data/rbi/stigg/models/v1/subscription_delegate_params.rbi +6 -2
  59. data/rbi/stigg/models/v1/subscription_delegate_response.rbi +84 -1
  60. data/rbi/stigg/models/v1/subscription_list_params.rbi +26 -28
  61. data/rbi/stigg/models/v1/subscription_list_response.rbi +460 -435
  62. data/rbi/stigg/models/v1/subscription_migrate_params.rbi +3 -3
  63. data/rbi/stigg/models/v1/subscription_migrate_response.rbi +84 -1
  64. data/rbi/stigg/models/v1/subscription_preview_params.rbi +112 -14
  65. data/rbi/stigg/models/v1/subscription_preview_response.rbi +139 -6
  66. data/rbi/stigg/models/v1/subscription_retrieve_response.rbi +84 -1
  67. data/rbi/stigg/models/v1/subscription_transfer_params.rbi +2 -4
  68. data/rbi/stigg/models/v1/subscription_transfer_response.rbi +84 -1
  69. data/rbi/stigg/models/v1/subscriptions/future_update_cancel_pending_payment_response.rbi +1 -0
  70. data/rbi/stigg/models/v1/subscriptions/future_update_cancel_schedule_response.rbi +1 -0
  71. data/rbi/stigg/models/v1_create_event_params.rbi +1 -0
  72. data/rbi/stigg/models/v1_create_event_response.rbi +8 -1
  73. data/rbi/stigg/models/v1_create_usage_params.rbi +44 -4
  74. data/rbi/stigg/models/v1_create_usage_response.rbi +8 -1
  75. data/rbi/stigg/resources/v1/coupons.rbi +20 -12
  76. data/rbi/stigg/resources/v1/customers/payment_method.rbi +9 -3
  77. data/rbi/stigg/resources/v1/customers/usage.rbi +0 -29
  78. data/rbi/stigg/resources/v1/customers.rbi +34 -20
  79. data/rbi/stigg/resources/v1/subscriptions/future_update.rbi +12 -4
  80. data/rbi/stigg/resources/v1/subscriptions.rbi +102 -23
  81. data/rbi/stigg/resources/v1.rbi +2 -2
  82. data/sig/stigg/internal/my_cursor_id_page.rbs +17 -0
  83. data/sig/stigg/models/v1/coupon_create_response.rbs +4 -4
  84. data/sig/stigg/models/v1/coupon_list_params.rbs +11 -11
  85. data/sig/stigg/models/v1/coupon_list_response.rbs +331 -351
  86. data/sig/stigg/models/v1/coupon_retrieve_response.rbs +4 -4
  87. data/sig/stigg/models/v1/customer_list_params.rbs +11 -11
  88. data/sig/stigg/models/v1/customer_list_response.rbs +133 -153
  89. data/sig/stigg/models/v1/subscription_create_params.rbs +2029 -5
  90. data/sig/stigg/models/v1/subscription_create_response.rbs +1022 -0
  91. data/sig/stigg/models/v1/subscription_delegate_response.rbs +31 -0
  92. data/sig/stigg/models/v1/subscription_list_params.rbs +14 -14
  93. data/sig/stigg/models/v1/subscription_list_response.rbs +196 -189
  94. data/sig/stigg/models/v1/subscription_migrate_response.rbs +31 -0
  95. data/sig/stigg/models/v1/subscription_preview_params.rbs +2 -6
  96. data/sig/stigg/models/v1/subscription_retrieve_response.rbs +31 -0
  97. data/sig/stigg/models/v1/subscription_transfer_response.rbs +31 -0
  98. data/sig/stigg/models/v1_create_usage_params.rbs +15 -5
  99. data/sig/stigg/resources/v1/coupons.rbs +3 -3
  100. data/sig/stigg/resources/v1/customers/usage.rbs +0 -10
  101. data/sig/stigg/resources/v1/customers.rbs +3 -5
  102. data/sig/stigg/resources/v1/subscriptions.rbs +19 -4
  103. metadata +2 -23
  104. data/lib/stigg/models/v1/customers/promotional_create_params.rb +0 -294
  105. data/lib/stigg/models/v1/customers/promotional_create_response.rb +0 -268
  106. data/lib/stigg/models/v1/customers/promotional_revoke_params.rb +0 -24
  107. data/lib/stigg/models/v1/customers/promotional_revoke_response.rb +0 -268
  108. data/lib/stigg/models/v1/customers/usage_retrieve_params.rb +0 -56
  109. data/lib/stigg/models/v1/customers/usage_retrieve_response.rb +0 -145
  110. data/lib/stigg/resources/v1/customers/promotional.rb +0 -69
  111. data/rbi/stigg/models/v1/customers/promotional_create_params.rbi +0 -639
  112. data/rbi/stigg/models/v1/customers/promotional_create_response.rbi +0 -495
  113. data/rbi/stigg/models/v1/customers/promotional_revoke_params.rbi +0 -42
  114. data/rbi/stigg/models/v1/customers/promotional_revoke_response.rbi +0 -497
  115. data/rbi/stigg/models/v1/customers/usage_retrieve_params.rbi +0 -84
  116. data/rbi/stigg/models/v1/customers/usage_retrieve_response.rbi +0 -353
  117. data/rbi/stigg/resources/v1/customers/promotional.rbi +0 -53
  118. data/sig/stigg/models/v1/customers/promotional_create_params.rbs +0 -234
  119. data/sig/stigg/models/v1/customers/promotional_create_response.rbs +0 -209
  120. data/sig/stigg/models/v1/customers/promotional_revoke_params.rbs +0 -27
  121. data/sig/stigg/models/v1/customers/promotional_revoke_response.rbs +0 -209
  122. data/sig/stigg/models/v1/customers/usage_retrieve_params.rbs +0 -54
  123. data/sig/stigg/models/v1/customers/usage_retrieve_response.rbs +0 -134
  124. data/sig/stigg/resources/v1/customers/promotional.rbs +0 -23
@@ -7,22 +7,53 @@ module Stigg
7
7
  sig { returns(Stigg::Resources::V1::Subscriptions::FutureUpdate) }
8
8
  attr_reader :future_update
9
9
 
10
- # Create a new Subscription
10
+ # Provision subscription
11
11
  sig do
12
12
  params(
13
13
  customer_id: String,
14
14
  plan_id: String,
15
- id: T.nilable(String),
15
+ id: String,
16
+ addons:
17
+ T::Array[Stigg::V1::SubscriptionCreateParams::Addon::OrHash],
18
+ applied_coupon:
19
+ Stigg::V1::SubscriptionCreateParams::AppliedCoupon::OrHash,
16
20
  await_payment_confirmation: T::Boolean,
21
+ billing_country_code: T.nilable(String),
22
+ billing_id: T.nilable(String),
23
+ billing_information:
24
+ Stigg::V1::SubscriptionCreateParams::BillingInformation::OrHash,
17
25
  billing_period:
18
26
  Stigg::V1::SubscriptionCreateParams::BillingPeriod::OrSymbol,
27
+ budget:
28
+ T.nilable(Stigg::V1::SubscriptionCreateParams::Budget::OrHash),
29
+ charges:
30
+ T::Array[Stigg::V1::SubscriptionCreateParams::Charge::OrHash],
19
31
  checkout_options:
20
32
  Stigg::V1::SubscriptionCreateParams::CheckoutOptions::OrHash,
21
33
  metadata: T::Hash[Symbol, String],
34
+ minimum_spend:
35
+ T.nilable(
36
+ Stigg::V1::SubscriptionCreateParams::MinimumSpend::OrHash
37
+ ),
22
38
  paying_customer_id: T.nilable(String),
39
+ payment_collection_method:
40
+ Stigg::V1::SubscriptionCreateParams::PaymentCollectionMethod::OrSymbol,
41
+ price_overrides:
42
+ T::Array[
43
+ Stigg::V1::SubscriptionCreateParams::PriceOverride::OrHash
44
+ ],
23
45
  resource_id: T.nilable(String),
46
+ salesforce_id: T.nilable(String),
47
+ schedule_strategy:
48
+ Stigg::V1::SubscriptionCreateParams::ScheduleStrategy::OrSymbol,
49
+ start_date: Time,
50
+ subscription_entitlements:
51
+ T::Array[
52
+ Stigg::V1::SubscriptionCreateParams::SubscriptionEntitlement::OrHash
53
+ ],
24
54
  trial_override_configuration:
25
55
  Stigg::V1::SubscriptionCreateParams::TrialOverrideConfiguration::OrHash,
56
+ unit_quantity: Float,
26
57
  request_options: Stigg::RequestOptions::OrHash
27
58
  ).returns(Stigg::Models::V1::SubscriptionCreateResponse)
28
59
  end
@@ -33,59 +64,91 @@ module Stigg
33
64
  plan_id:,
34
65
  # Unique identifier for the subscription
35
66
  id: nil,
67
+ addons: nil,
68
+ # Coupon configuration
69
+ applied_coupon: nil,
36
70
  # Whether to wait for payment confirmation before returning the subscription
37
71
  await_payment_confirmation: nil,
72
+ # The ISO 3166-1 alpha-2 country code for billing
73
+ billing_country_code: nil,
74
+ # External billing system identifier
75
+ billing_id: nil,
76
+ billing_information: nil,
77
+ # Billing period (MONTHLY or ANNUALLY)
38
78
  billing_period: nil,
79
+ budget: nil,
80
+ charges: nil,
81
+ # Checkout page configuration for payment collection
39
82
  checkout_options: nil,
40
83
  # Additional metadata for the subscription
41
84
  metadata: nil,
85
+ minimum_spend: nil,
42
86
  # Optional paying customer ID for split billing scenarios
43
87
  paying_customer_id: nil,
88
+ # How payments should be collected for this subscription
89
+ payment_collection_method: nil,
90
+ price_overrides: nil,
44
91
  # Optional resource ID for multi-instance subscriptions
45
92
  resource_id: nil,
93
+ # Salesforce ID
94
+ salesforce_id: nil,
95
+ # Strategy for scheduling subscription changes
96
+ schedule_strategy: nil,
97
+ # Subscription start date
98
+ start_date: nil,
99
+ subscription_entitlements: nil,
100
+ # Trial period override settings
46
101
  trial_override_configuration: nil,
102
+ unit_quantity: nil,
47
103
  request_options: {}
48
104
  )
49
105
  end
50
106
 
51
- # Get a single Subscription by id
107
+ # Get a single subscription by ID
52
108
  sig do
53
109
  params(
54
110
  id: String,
55
111
  request_options: Stigg::RequestOptions::OrHash
56
112
  ).returns(Stigg::Models::V1::SubscriptionRetrieveResponse)
57
113
  end
58
- def retrieve(id, request_options: {})
114
+ def retrieve(
115
+ # The unique identifier of the entity
116
+ id,
117
+ request_options: {}
118
+ )
59
119
  end
60
120
 
61
- # Get a list of Subscriptions
121
+ # Get a list of subscriptions
62
122
  sig do
63
123
  params(
124
+ after: String,
125
+ before: String,
64
126
  customer_id: String,
65
- ending_before: String,
66
127
  limit: Integer,
67
- starting_after: String,
68
128
  status: String,
69
129
  request_options: Stigg::RequestOptions::OrHash
70
- ).returns(Stigg::Models::V1::SubscriptionListResponse)
130
+ ).returns(
131
+ Stigg::Internal::MyCursorIDPage[
132
+ Stigg::Models::V1::SubscriptionListResponse
133
+ ]
134
+ )
71
135
  end
72
136
  def list(
137
+ # Return items that come after this cursor
138
+ after: nil,
139
+ # Return items that come before this cursor
140
+ before: nil,
73
141
  # Filter by customer ID
74
142
  customer_id: nil,
75
- # Ending before this UUID for pagination
76
- ending_before: nil,
77
- # Items per page
143
+ # Maximum number of items to return
78
144
  limit: nil,
79
- # Starting after this UUID for pagination
80
- starting_after: nil,
81
- # Filter by subscription status (comma-separated for multiple statuses, e.g.,
82
- # ACTIVE,IN_TRIAL)
145
+ # Filter by status (comma-separated)
83
146
  status: nil,
84
147
  request_options: {}
85
148
  )
86
149
  end
87
150
 
88
- # Perform delegate on a Subscription
151
+ # Delegate subscription payment to customer
89
152
  sig do
90
153
  params(
91
154
  id: String,
@@ -94,14 +157,17 @@ module Stigg
94
157
  ).returns(Stigg::Models::V1::SubscriptionDelegateResponse)
95
158
  end
96
159
  def delegate(
160
+ # The unique identifier of the entity
97
161
  id,
98
- # The customer ID to delegate the subscription to
162
+ # The unique identifier of the customer who will assume payment responsibility for
163
+ # this subscription. This customer must already exist in your Stigg account and
164
+ # have a valid payment method if the subscription requires payment.
99
165
  target_customer_id:,
100
166
  request_options: {}
101
167
  )
102
168
  end
103
169
 
104
- # Perform migrate to latest plan version on a Subscription
170
+ # Migrate subscription to latest plan version
105
171
  sig do
106
172
  params(
107
173
  id: String,
@@ -111,14 +177,15 @@ module Stigg
111
177
  ).returns(Stigg::Models::V1::SubscriptionMigrateResponse)
112
178
  end
113
179
  def migrate(
180
+ # The unique identifier of the entity
114
181
  id,
115
- # When to migrate the subscription: IMMEDIATE or END_OF_BILLING_PERIOD
182
+ # When to migrate (immediate or period end)
116
183
  subscription_migration_time: nil,
117
184
  request_options: {}
118
185
  )
119
186
  end
120
187
 
121
- # Create a new Subscription Preview
188
+ # Preview subscription
122
189
  sig do
123
190
  params(
124
191
  customer_id: String,
@@ -154,25 +221,37 @@ module Stigg
154
221
  customer_id:,
155
222
  # Plan ID
156
223
  plan_id:,
224
+ # Addons to include
157
225
  addons: nil,
226
+ # Coupon or discount to apply
158
227
  applied_coupon: nil,
228
+ # Billable features with quantities
159
229
  billable_features: nil,
230
+ # ISO 3166-1 country code for localization
160
231
  billing_country_code: nil,
232
+ # Billing and tax configuration
161
233
  billing_information: nil,
234
+ # Billing period (MONTHLY or ANNUALLY)
162
235
  billing_period: nil,
236
+ # One-time or recurring charges
163
237
  charges: nil,
238
+ # Paying customer ID for delegated billing
164
239
  paying_customer_id: nil,
240
+ # Resource ID for multi-instance subscriptions
165
241
  resource_id: nil,
242
+ # When to apply subscription changes
166
243
  schedule_strategy: nil,
167
244
  # Subscription start date
168
245
  start_date: nil,
246
+ # Trial period override settings
169
247
  trial_override_configuration: nil,
248
+ # Unit quantity for per-unit pricing
170
249
  unit_quantity: nil,
171
250
  request_options: {}
172
251
  )
173
252
  end
174
253
 
175
- # Perform transfer to resource on a Subscription
254
+ # Transfer subscription to resource
176
255
  sig do
177
256
  params(
178
257
  id: String,
@@ -181,9 +260,9 @@ module Stigg
181
260
  ).returns(Stigg::Models::V1::SubscriptionTransferResponse)
182
261
  end
183
262
  def transfer(
263
+ # The unique identifier of the entity
184
264
  id,
185
- # The resource ID to transfer the subscription to. The destination resource must
186
- # belong to the same customer.
265
+ # Resource ID to transfer the subscription to
187
266
  destination_resource_id:,
188
267
  request_options: {}
189
268
  )
@@ -12,7 +12,7 @@ module Stigg
12
12
  sig { returns(Stigg::Resources::V1::Coupons) }
13
13
  attr_reader :coupons
14
14
 
15
- # Create events
15
+ # Report usage events
16
16
  sig do
17
17
  params(
18
18
  events: T::Array[Stigg::V1CreateEventParams::Event::OrHash],
@@ -26,7 +26,7 @@ module Stigg
26
26
  )
27
27
  end
28
28
 
29
- # Create a new Usage
29
+ # Report usage measurements
30
30
  sig do
31
31
  params(
32
32
  usages: T::Array[Stigg::V1CreateUsageParams::Usage::OrHash],
@@ -5,7 +5,24 @@ module Stigg
5
5
 
6
6
  attr_accessor data: ::Array[Elem]?
7
7
 
8
+ attr_accessor pagination: Pagination
9
+
8
10
  def inspect: -> String
11
+
12
+ type pagination = { next_: String, prev: String }
13
+ class Pagination < Stigg::Internal::Type::BaseModel
14
+ attr_reader next_: String?
15
+
16
+ def next_=: (String) -> String
17
+
18
+ attr_reader prev: String?
19
+
20
+ def prev=: (String) -> String
21
+
22
+ def initialize: (?next_: String, ?prev: String) -> void
23
+
24
+ def to_hash: -> { next_: String, prev: String }
25
+ end
9
26
  end
10
27
  end
11
28
  end
@@ -92,22 +92,22 @@ module Stigg
92
92
  type amounts_off =
93
93
  {
94
94
  amount: Float,
95
- currency: Stigg::Models::V1::CouponCreateResponse::Data::AmountsOff::currency?
95
+ currency: Stigg::Models::V1::CouponCreateResponse::Data::AmountsOff::currency
96
96
  }
97
97
 
98
98
  class AmountsOff < Stigg::Internal::Type::BaseModel
99
99
  attr_accessor amount: Float
100
100
 
101
- attr_accessor currency: Stigg::Models::V1::CouponCreateResponse::Data::AmountsOff::currency?
101
+ attr_accessor currency: Stigg::Models::V1::CouponCreateResponse::Data::AmountsOff::currency
102
102
 
103
103
  def initialize: (
104
104
  amount: Float,
105
- currency: Stigg::Models::V1::CouponCreateResponse::Data::AmountsOff::currency?
105
+ currency: Stigg::Models::V1::CouponCreateResponse::Data::AmountsOff::currency
106
106
  ) -> void
107
107
 
108
108
  def to_hash: -> {
109
109
  amount: Float,
110
- currency: Stigg::Models::V1::CouponCreateResponse::Data::AmountsOff::currency?
110
+ currency: Stigg::Models::V1::CouponCreateResponse::Data::AmountsOff::currency
111
111
  }
112
112
 
113
113
  type currency =
@@ -2,36 +2,36 @@ module Stigg
2
2
  module Models
3
3
  module V1
4
4
  type coupon_list_params =
5
- { ending_before: String, limit: Integer, starting_after: String }
5
+ { after: String, before: String, limit: Integer }
6
6
  & Stigg::Internal::Type::request_parameters
7
7
 
8
8
  class CouponListParams < Stigg::Internal::Type::BaseModel
9
9
  extend Stigg::Internal::Type::RequestParameters::Converter
10
10
  include Stigg::Internal::Type::RequestParameters
11
11
 
12
- attr_reader ending_before: String?
12
+ attr_reader after: String?
13
13
 
14
- def ending_before=: (String) -> String
14
+ def after=: (String) -> String
15
15
 
16
- attr_reader limit: Integer?
16
+ attr_reader before: String?
17
17
 
18
- def limit=: (Integer) -> Integer
18
+ def before=: (String) -> String
19
19
 
20
- attr_reader starting_after: String?
20
+ attr_reader limit: Integer?
21
21
 
22
- def starting_after=: (String) -> String
22
+ def limit=: (Integer) -> Integer
23
23
 
24
24
  def initialize: (
25
- ?ending_before: String,
25
+ ?after: String,
26
+ ?before: String,
26
27
  ?limit: Integer,
27
- ?starting_after: String,
28
28
  ?request_options: Stigg::request_opts
29
29
  ) -> void
30
30
 
31
31
  def to_hash: -> {
32
- ending_before: String,
32
+ after: String,
33
+ before: String,
33
34
  limit: Integer,
34
- starting_after: String,
35
35
  request_options: Stigg::RequestOptions
36
36
  }
37
37
  end