chartmogul-ruby 3.2.0 → 3.3.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: ab4919c76f5171e56a194669e8b74fca6493ff75471a16f91ba0d75ff0465221
4
- data.tar.gz: 68a1c21253bf2198caa041d22dfb459dfafbae69073d098923f71d0854b0a8e9
3
+ metadata.gz: 97bcbf7f93e375c5e4cd587ccdb8e150bca836c2d636b5fb401ad2563f1e1c59
4
+ data.tar.gz: c50d53814cbda62472f2ca0ab7e48693b4ad775773749a728c1793b6c49752c7
5
5
  SHA512:
6
- metadata.gz: 58b6b5379791fbd767466e3a841e1e4f2951e50896a8ef44c17ea04ff789ca6bc106c5a54733539e2232ec25de8b4924fe07a75fbdb12ac8752429c531a73c45
7
- data.tar.gz: 3e44c3234b916381053aa0e60eff2bba3c48d468ffd24cf69c5f3b80afcc4a78e38cdd4865842f714fe6f7412deb7796791fd3e69e03259aa503e266ee3da344
6
+ metadata.gz: e54f974d97329f66bb5e5106d32471ca837aadb0cb03639b94e860e4f548def5a5b39ccd59768bab48552729fb6898f519731486e7892a2e186168749a46c677
7
+ data.tar.gz: 1a5a5314317691556d11ee826e78f7d6468d96e629efe52a5d6b09a8703d3a5f76e450c741f36bd81fdf42ea130c9f239aa75d0b98e1e5d492bff7b1a715b78a
@@ -0,0 +1,320 @@
1
+ ---
2
+ http_interactions:
3
+ - request:
4
+ method: post
5
+ uri: https://api.chartmogul.com/v1/data_sources
6
+ body:
7
+ encoding: UTF-8
8
+ string: '{"name":"Subscription Events Test ds_create"}'
9
+ headers:
10
+ User-Agent:
11
+ - chartmogul-ruby/3.0.0
12
+ Content-Type:
13
+ - application/json
14
+ Authorization:
15
+ - Basic hidden
16
+ response:
17
+ status:
18
+ code: 201
19
+ message: Created
20
+ headers:
21
+ access-control-allow-credentials:
22
+ - 'true'
23
+ content-type:
24
+ - application/json
25
+ date:
26
+ - Fri, 27 May 2022 21:54:10 GMT
27
+ status:
28
+ - 201 Created
29
+ content-length:
30
+ - '172'
31
+ connection:
32
+ - keep-alive
33
+ body:
34
+ encoding: UTF-8
35
+ string: '{"uuid":"ds_8a5c8aa6-de07-11ec-bf86-afa844e0d0e3","name":"Subscription
36
+ Events Test ds_create","system":"Import API","created_at":"2022-05-27T21:54:10.897Z","status":"idle"}'
37
+ http_version:
38
+ recorded_at: Fri, 27 May 2022 21:54:10 GMT
39
+ - request:
40
+ method: post
41
+ uri: https://api.chartmogul.com/v1/customers
42
+ body:
43
+ encoding: UTF-8
44
+ string: '{"external_id":"test_cus_ext_id","name":"Test Customer","data_source_uuid":"ds_8a5c8aa6-de07-11ec-bf86-afa844e0d0e3"}'
45
+ headers:
46
+ User-Agent:
47
+ - chartmogul-ruby/3.0.0
48
+ Content-Type:
49
+ - application/json
50
+ Authorization:
51
+ - Basic hidden
52
+ response:
53
+ status:
54
+ code: 201
55
+ message: Created
56
+ headers:
57
+ access-control-allow-credentials:
58
+ - 'true'
59
+ content-type:
60
+ - application/json
61
+ date:
62
+ - Fri, 27 May 2022 21:54:11 GMT
63
+ status:
64
+ - 201 Created
65
+ content-length:
66
+ - '772'
67
+ connection:
68
+ - keep-alive
69
+ body:
70
+ encoding: UTF-8
71
+ string: '{"id":131944224,"uuid":"cus_8a9bfcc2-de07-11ec-bf87-330a0f8a4736","external_id":"test_cus_ext_id","name":"Test
72
+ Customer","email":"","status":"Lead","customer-since":null,"attributes":{"custom":{},"clearbit":{},"stripe":{},"tags":[]},"data_source_uuid":"ds_8a5c8aa6-de07-11ec-bf86-afa844e0d0e3","data_source_uuids":["ds_8a5c8aa6-de07-11ec-bf86-afa844e0d0e3"],"external_ids":["test_cus_ext_id"],"company":"","country":null,"state":null,"city":"","zip":null,"lead_created_at":null,"free_trial_started_at":null,"address":{"country":null,"state":null,"city":"","address_zip":null},"mrr":0,"arr":0,"billing-system-url":null,"chartmogul-url":"https://app.chartmogul.com/#/customers/131944224-Test_Customer","billing-system-type":"Import
73
+ API","currency":"USD","currency-sign":"$"}'
74
+ http_version:
75
+ recorded_at: Fri, 27 May 2022 21:54:11 GMT
76
+ - request:
77
+ method: post
78
+ uri: https://api.chartmogul.com/v1/plans
79
+ body:
80
+ encoding: UTF-8
81
+ string: '{"name":"Test Plan1","interval_count":7,"interval_unit":"day","data_source_uuid":"ds_8a5c8aa6-de07-11ec-bf86-afa844e0d0e3"}'
82
+ headers:
83
+ User-Agent:
84
+ - chartmogul-ruby/3.0.0
85
+ Content-Type:
86
+ - application/json
87
+ Authorization:
88
+ - Basic hidden
89
+ response:
90
+ status:
91
+ code: 201
92
+ message: Created
93
+ headers:
94
+ access-control-allow-credentials:
95
+ - 'true'
96
+ cache-control:
97
+ - max-age=0, private, must-revalidate
98
+ content-type:
99
+ - application/json; charset=utf-8
100
+ date:
101
+ - Fri, 27 May 2022 21:54:12 GMT
102
+ etag:
103
+ - W/"3242b5ebeda79192d6f7f67c13b958d9"
104
+ referrer-policy:
105
+ - strict-origin-when-cross-origin
106
+ status:
107
+ - 201 Created
108
+ x-content-type-options:
109
+ - nosniff
110
+ x-download-options:
111
+ - noopen
112
+ x-frame-options:
113
+ - DENY
114
+ x-permitted-cross-domain-policies:
115
+ - none
116
+ x-request-id:
117
+ - 9d52d66d6610321598d3b723786c28ab
118
+ x-runtime:
119
+ - '0.052711'
120
+ x-xss-protection:
121
+ - 1; mode=block
122
+ content-length:
123
+ - '225'
124
+ connection:
125
+ - keep-alive
126
+ body:
127
+ encoding: UTF-8
128
+ string: '{"external_id":"77b16a30-c035-013a-fdad-62658d22be5b","name":"Test
129
+ Plan1","interval_count":7,"interval_unit":"day","data_source_uuid":"ds_8a5c8aa6-de07-11ec-bf86-afa844e0d0e3","uuid":"pl_77b16a30-c035-013a-fdad-62658d22be5b"}'
130
+ http_version:
131
+ recorded_at: Fri, 27 May 2022 21:54:12 GMT
132
+ - request:
133
+ method: post
134
+ uri: https://api.chartmogul.com/v1/subscription_events
135
+ body:
136
+ encoding: UTF-8
137
+ string: '{"subscription_event":{"id":null,"data_source_uuid":"ds_8a5c8aa6-de07-11ec-bf86-afa844e0d0e3","customer_external_id":"test_cus_ext_id","subscription_set_external_id":"","subscription_external_id":"test_cus_sub_ext_id1","plan_external_id":"","event_date":"2022-05-18T09:48:34Z","effective_date":"2021-12-30T00:01:00Z","event_type":"subscription_cancelled","external_id":"test_ev_id_create_1","errors":null,"created_at":null,"updated_at":null,"quantity":"","currency":"","amount_in_cents":"","tax_amount_in_cents":null,"retracted_event_id":null}}'
138
+ headers:
139
+ User-Agent:
140
+ - chartmogul-ruby/3.0.0
141
+ Content-Type:
142
+ - application/json
143
+ Authorization:
144
+ - Basic hidden
145
+ response:
146
+ status:
147
+ code: 201
148
+ message: Created
149
+ headers:
150
+ access-control-allow-credentials:
151
+ - 'true'
152
+ cache-control:
153
+ - max-age=0, private, must-revalidate
154
+ content-type:
155
+ - application/json; charset=utf-8
156
+ date:
157
+ - Fri, 27 May 2022 21:54:12 GMT
158
+ etag:
159
+ - W/"9394c4479530dec99d1ae768f24144ac"
160
+ referrer-policy:
161
+ - strict-origin-when-cross-origin
162
+ status:
163
+ - 201 Created
164
+ x-content-type-options:
165
+ - nosniff
166
+ x-download-options:
167
+ - noopen
168
+ x-frame-options:
169
+ - DENY
170
+ x-permitted-cross-domain-policies:
171
+ - none
172
+ x-request-id:
173
+ - cf699a67b6d807a4e5ae9e0b657ee067
174
+ x-runtime:
175
+ - '0.041647'
176
+ x-xss-protection:
177
+ - 1; mode=block
178
+ content-length:
179
+ - '560'
180
+ connection:
181
+ - keep-alive
182
+ body:
183
+ encoding: UTF-8
184
+ string: '{"id":138979488,"data_source_uuid":"ds_8a5c8aa6-de07-11ec-bf86-afa844e0d0e3","customer_external_id":"test_cus_ext_id","subscription_set_external_id":"","subscription_external_id":"test_cus_sub_ext_id1","plan_external_id":"","event_date":"2022-05-18T09:48:34Z","effective_date":"2021-12-30T00:01:00Z","event_type":"subscription_cancelled","external_id":"test_ev_id_create_1","errors":{},"created_at":"2022-05-27T21:54:12Z","updated_at":"2022-05-27T21:54:12Z","quantity":"","currency":"","amount_in_cents":"","tax_amount_in_cents":null,"retracted_event_id":null}'
185
+ http_version:
186
+ recorded_at: Fri, 27 May 2022 21:54:12 GMT
187
+ - request:
188
+ method: get
189
+ uri: https://api.chartmogul.com/v1/subscription_events?data_source_uuid=ds_8a5c8aa6-de07-11ec-bf86-afa844e0d0e3
190
+ body:
191
+ encoding: US-ASCII
192
+ string: ''
193
+ headers:
194
+ User-Agent:
195
+ - chartmogul-ruby/3.0.0
196
+ Content-Type:
197
+ - application/json
198
+ Authorization:
199
+ - Basic hidden
200
+ response:
201
+ status:
202
+ code: 200
203
+ message: OK
204
+ headers:
205
+ access-control-allow-credentials:
206
+ - 'true'
207
+ cache-control:
208
+ - max-age=0, private, must-revalidate
209
+ content-type:
210
+ - application/json; charset=utf-8
211
+ date:
212
+ - Fri, 27 May 2022 21:54:13 GMT
213
+ etag:
214
+ - W/"284a193c365cecb97517c5b3f7732e01"
215
+ referrer-policy:
216
+ - strict-origin-when-cross-origin
217
+ status:
218
+ - 200 OK
219
+ vary:
220
+ - Accept-Encoding, Accept-Encoding
221
+ x-content-type-options:
222
+ - nosniff
223
+ x-download-options:
224
+ - noopen
225
+ x-frame-options:
226
+ - DENY
227
+ x-permitted-cross-domain-policies:
228
+ - none
229
+ x-request-id:
230
+ - c1886a231273596512261eb400777323
231
+ x-runtime:
232
+ - '0.016469'
233
+ x-xss-protection:
234
+ - 1; mode=block
235
+ content-length:
236
+ - '370'
237
+ connection:
238
+ - keep-alive
239
+ body:
240
+ encoding: ASCII-8BIT
241
+ string: '{"subscription_events":[{"id":138979488,"data_source_uuid":"ds_8a5c8aa6-de07-11ec-bf86-afa844e0d0e3","customer_external_id":"test_cus_ext_id","subscription_set_external_id":"","subscription_external_id":"test_cus_sub_ext_id1","plan_external_id":"","event_date":"2022-05-18T09:48:34Z","effective_date":"2021-12-30T00:01:00Z","event_type":"subscription_cancelled","external_id":"test_ev_id_create_1","errors":{},"created_at":"2022-05-27T21:54:12Z","updated_at":"2022-05-27T21:54:12Z","quantity":"","currency":"","amount_in_cents":"","tax_amount_in_cents":null,"retracted_event_id":null}],"meta":{"next_key":null,"prev_key":null,"before_key":"2022-05-27T21:54:13.079Z","page":1,"total_pages":1}}'
242
+ http_version:
243
+ recorded_at: Fri, 27 May 2022 21:54:13 GMT
244
+ - request:
245
+ method: delete
246
+ uri: https://api.chartmogul.com/v1/subscription_events?subscription_event%5Bid%5D=138979488
247
+ body:
248
+ encoding: US-ASCII
249
+ string: ''
250
+ headers:
251
+ User-Agent:
252
+ - chartmogul-ruby/3.0.0
253
+ Authorization:
254
+ - Basic hidden
255
+ response:
256
+ status:
257
+ code: 204
258
+ message: No Content
259
+ headers:
260
+ access-control-allow-credentials:
261
+ - 'true'
262
+ cache-control:
263
+ - no-cache
264
+ date:
265
+ - Fri, 27 May 2022 21:54:13 GMT
266
+ referrer-policy:
267
+ - strict-origin-when-cross-origin
268
+ status:
269
+ - 204 No Content
270
+ x-content-type-options:
271
+ - nosniff
272
+ x-download-options:
273
+ - noopen
274
+ x-frame-options:
275
+ - DENY
276
+ x-permitted-cross-domain-policies:
277
+ - none
278
+ x-request-id:
279
+ - d8fae1b2be5b11017e900b87748532fc
280
+ x-runtime:
281
+ - '0.037148'
282
+ x-xss-protection:
283
+ - 1; mode=block
284
+ connection:
285
+ - keep-alive
286
+ body:
287
+ encoding: UTF-8
288
+ string: ''
289
+ http_version:
290
+ recorded_at: Fri, 27 May 2022 21:54:13 GMT
291
+ - request:
292
+ method: delete
293
+ uri: https://api.chartmogul.com/v1/data_sources/ds_8a5c8aa6-de07-11ec-bf86-afa844e0d0e3
294
+ body:
295
+ encoding: US-ASCII
296
+ string: ''
297
+ headers:
298
+ User-Agent:
299
+ - chartmogul-ruby/3.0.0
300
+ Authorization:
301
+ - Basic hidden
302
+ response:
303
+ status:
304
+ code: 204
305
+ message: No Content
306
+ headers:
307
+ access-control-allow-credentials:
308
+ - 'true'
309
+ date:
310
+ - Fri, 27 May 2022 21:54:13 GMT
311
+ status:
312
+ - 204 No Content
313
+ connection:
314
+ - keep-alive
315
+ body:
316
+ encoding: UTF-8
317
+ string: ''
318
+ http_version:
319
+ recorded_at: Fri, 27 May 2022 21:54:13 GMT
320
+ recorded_with: VCR 5.1.0
@@ -35,6 +35,22 @@ module ChartMogul
35
35
  custom!(:post, resource_path.path, subscription_event: instance_attributes)
36
36
  end
37
37
 
38
+ # This endpoint requires we send the attributes as:
39
+ # { subscription_event: { key: value }}
40
+ # So we do not include the API::Actions::Create module here and rather use a
41
+ # variation of the method there to accommodate this difference in behaviour.
42
+ def self.create!(attributes)
43
+ resp = handling_errors do
44
+ connection.post(resource_path.path) do |req|
45
+ req.headers['Content-Type'] = 'application/json'
46
+ req.body = JSON.dump({ subscription_event: attributes })
47
+ end
48
+ end
49
+ json = ChartMogul::Utils::JSONParser.parse(resp.body, immutable_keys: immutable_keys)
50
+
51
+ new_from_json(json)
52
+ end
53
+
38
54
  def update!(attrs)
39
55
  custom!(:patch, resource_path.path, subscription_event: attrs.merge(id: instance_attributes[:id]))
40
56
  end
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module ChartMogul
4
- VERSION = '3.2.0'
4
+ VERSION = '3.3.0'
5
5
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: chartmogul-ruby
3
3
  version: !ruby/object:Gem::Version
4
- version: 3.2.0
4
+ version: 3.3.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Petr Kopac
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2023-06-15 00:00:00.000000000 Z
11
+ date: 2023-08-14 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: faraday
@@ -290,6 +290,7 @@ files:
290
290
  - fixtures/vcr_cassettes/ChartMogul_Subscription/_update_cancellation_dates/when_array_includes_valid_entries/is_setting_the_cancellation_dates_of_the_subscription.yml
291
291
  - fixtures/vcr_cassettes/ChartMogul_Subscription/_update_cancellation_dates/when_array_is_empty/makes_an_API_call_and_removes_the_cancellation_dates.yml
292
292
  - fixtures/vcr_cassettes/ChartMogul_SubscriptionEvent/API_interactions/creates_a_new_subscription_event.yml
293
+ - fixtures/vcr_cassettes/ChartMogul_SubscriptionEvent/API_interactions/creates_a_new_subscription_event_through_initialization.yml
293
294
  - fixtures/vcr_cassettes/ChartMogul_SubscriptionEvent/API_interactions/deletes_the_subscription_event.yml
294
295
  - fixtures/vcr_cassettes/ChartMogul_SubscriptionEvent/API_interactions/lists_all_subscription_events.yml
295
296
  - fixtures/vcr_cassettes/ChartMogul_SubscriptionEvent/API_interactions/updates_the_subscription_event.yml
@@ -383,7 +384,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
383
384
  - !ruby/object:Gem::Version
384
385
  version: '0'
385
386
  requirements: []
386
- rubygems_version: 3.2.3
387
+ rubygems_version: 3.4.7
387
388
  signing_key:
388
389
  specification_version: 4
389
390
  summary: Chartmogul API Ruby Client