paddle 2.5.2 → 2.7.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 +4 -4
- data/Gemfile.lock +1 -1
- data/README.md +64 -1
- data/lib/paddle/models/adjustment.rb +7 -0
- data/lib/paddle/models/portal_session.rb +10 -0
- data/lib/paddle/models/simulation.rb +31 -0
- data/lib/paddle/models/simulation_run.rb +20 -0
- data/lib/paddle/models/simulation_run_event.rb +15 -0
- data/lib/paddle/models/simulation_type.rb +10 -0
- data/lib/paddle/version.rb +1 -1
- data/lib/paddle.rb +5 -0
- metadata +8 -3
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 30077dce563178db3e9407b4ef168bb1a24aabb324370a00ea37730eb926dbe6
|
4
|
+
data.tar.gz: 5ae2b0845d75b6fdcc001aadcf204c879d7596c13ab544f34d42192d5984cb04
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 2f4ed6ef5a1be40bb0c447c22b6ebe27f8527c9b69f0d7ca2ea6f17fd52470d8581f6b6039d7f245a66a936219bce1e4b97a97556042da95c9d2d57930169fdf
|
7
|
+
data.tar.gz: 8eafdbd49ed16fe04f0f815e99889578f0e6045115ede50c3b17aaf21203110a5f9349b8e8aeeced3e4b8145e443ca481bf6c11c810e9e055bab771ed1c58e10
|
data/Gemfile.lock
CHANGED
data/README.md
CHANGED
@@ -7,7 +7,7 @@ The easiest and most complete Ruby library for the Paddle APIs, both Classic and
|
|
7
7
|
Add this line to your application's Gemfile:
|
8
8
|
|
9
9
|
```ruby
|
10
|
-
gem "paddle", "~> 2.
|
10
|
+
gem "paddle", "~> 2.6"
|
11
11
|
```
|
12
12
|
|
13
13
|
## Billing API
|
@@ -336,6 +336,16 @@ Paddle::Subscription.cancel(id: "sub_abc123", effective_from: "immediately")
|
|
336
336
|
Paddle::Subscription.activate(id: "sub_abc123")
|
337
337
|
```
|
338
338
|
|
339
|
+
### Customer Portal Sessions
|
340
|
+
|
341
|
+
```ruby
|
342
|
+
# Create a Customer Portal Session
|
343
|
+
# https://developer.paddle.com/api-reference/customer-portals/create-customer-portal-session
|
344
|
+
Paddle::PortalSession.create customer: "ctm_abc123"
|
345
|
+
Paddle::PortalSession.create customer: "ctm_abc123", subscription_ids: ["sub_abc123"]
|
346
|
+
```
|
347
|
+
|
348
|
+
|
339
349
|
### Adjustments
|
340
350
|
|
341
351
|
```ruby
|
@@ -358,6 +368,12 @@ Paddle::Adjustment.create(
|
|
358
368
|
}
|
359
369
|
]
|
360
370
|
)
|
371
|
+
|
372
|
+
# Get a credit note for an adjustment
|
373
|
+
# disposition defaults to "attachment"
|
374
|
+
# Returns a raw URL. This URL is not permanent and will expire.
|
375
|
+
# https://developer.paddle.com/api-reference/adjustments/get-credit-note-pdf
|
376
|
+
Paddle::Adjustment.credit_note(id: "adj_abc123", disposition: "inline")
|
361
377
|
```
|
362
378
|
|
363
379
|
### Event Types
|
@@ -461,6 +477,53 @@ Paddle::Report.create(
|
|
461
477
|
)
|
462
478
|
```
|
463
479
|
|
480
|
+
### Webhook Simulation Types
|
481
|
+
|
482
|
+
Retrieves a list of Simulation Types - https://developer.paddle.com/api-reference/simulation-types/overview
|
483
|
+
|
484
|
+
```ruby
|
485
|
+
Paddle::SimulationType.list
|
486
|
+
```
|
487
|
+
|
488
|
+
### Webhook Simulations
|
489
|
+
|
490
|
+
```ruby
|
491
|
+
# List all simulations
|
492
|
+
Paddle::Simulation.list
|
493
|
+
Paddle::Simulation.list(status: "archived")
|
494
|
+
Paddle::Simulation.list(notification_setting_id: "nftset_abc123")
|
495
|
+
|
496
|
+
# Create a simulation
|
497
|
+
# https://developer.paddle.com/api-reference/simulations/create-simulation
|
498
|
+
Paddle::Simulation.create(notification_setting_id: "ntfset_abc123", name: "Customer Create", type: "customer.completed")
|
499
|
+
Paddle::Simulation.create(notification_setting_id: "ntfset_abc123", name: "Subscription Created", type: "subscription_creation")
|
500
|
+
|
501
|
+
# Retrieve a simulation
|
502
|
+
Paddle::Simulation.retrieve(id: "ntfsim_abc123")
|
503
|
+
|
504
|
+
# Update a simulation
|
505
|
+
# https://developer.paddle.com/api-reference/simulations/update-simulation
|
506
|
+
Paddle::Simulation.update(id: "ntfsim_abc123", name: "Simulation 2")
|
507
|
+
Paddle::Simulation.update(id: "ntfsim_abc123", status: "archived")
|
508
|
+
|
509
|
+
# List all simulation runs
|
510
|
+
Paddle::Simulation.runs(id: "ntfsim_abc123")
|
511
|
+
|
512
|
+
# Create a simulation run
|
513
|
+
# https://developer.paddle.com/api-reference/simulations/create-simulation-run
|
514
|
+
Paddle::SimulationRun.create(simulation_id: "ntfsim_abc123")
|
515
|
+
|
516
|
+
# Retrieve a simulation run
|
517
|
+
Paddle::SimulationRun.retrieve(simulation_id: "ntfsim_abc123", id: "ntfsimrun_abc123")
|
518
|
+
|
519
|
+
# List all simulation run events
|
520
|
+
Paddle::SimulationRun.events(simulation_id: "ntfsim_abc123", run_id: "ntfsimrun_abc123")
|
521
|
+
|
522
|
+
# Replay a simulation run event
|
523
|
+
# https://developer.paddle.com/api-reference/simulations/replay-simulation-run-event
|
524
|
+
Paddle::SimulationRunEvent.replay(simulation_id: "ntfsim_abc123", run_id: "ntfsimrun_abc123", id: "ntfsimevt_abc123")
|
525
|
+
```
|
526
|
+
|
464
527
|
## Classic API
|
465
528
|
|
466
529
|
For accessing the Paddle Classic API
|
@@ -11,6 +11,13 @@ module Paddle
|
|
11
11
|
response = Client.post_request("adjustments", body: attrs.merge(params))
|
12
12
|
Adjustment.new(response.body["data"])
|
13
13
|
end
|
14
|
+
|
15
|
+
def credit_note(id:, disposition: "attachment")
|
16
|
+
response = Client.get_request("adjustments/#{id}/credit-note?disposition=#{disposition}")
|
17
|
+
if response.success?
|
18
|
+
response.body["data"]["url"]
|
19
|
+
end
|
20
|
+
end
|
14
21
|
end
|
15
22
|
end
|
16
23
|
end
|
@@ -0,0 +1,31 @@
|
|
1
|
+
module Paddle
|
2
|
+
class Simulation < Object
|
3
|
+
class << self
|
4
|
+
def list(**params)
|
5
|
+
response = Client.get_request("simulations", params: params)
|
6
|
+
Collection.from_response(response, type: Simulation)
|
7
|
+
end
|
8
|
+
|
9
|
+
def create(setting_id:, name:, type:, **params)
|
10
|
+
attrs = { notification_setting_id: setting_id, name: name, type: type }
|
11
|
+
response = Client.post_request("simulations", body: attrs.merge(params))
|
12
|
+
Simulation.new(response.body["data"])
|
13
|
+
end
|
14
|
+
|
15
|
+
def retrieve(id:)
|
16
|
+
response = Client.get_request("simulations/#{id}")
|
17
|
+
Simulation.new(response.body["data"])
|
18
|
+
end
|
19
|
+
|
20
|
+
def update(id:, **params)
|
21
|
+
response = Client.patch_request("simulations/#{id}", body: params)
|
22
|
+
Simulation.new(response.body["data"])
|
23
|
+
end
|
24
|
+
|
25
|
+
def runs(id:)
|
26
|
+
response = Client.get_request("simulations/#{id}/runs")
|
27
|
+
Collection.from_response(response, type: SimulationRun)
|
28
|
+
end
|
29
|
+
end
|
30
|
+
end
|
31
|
+
end
|
@@ -0,0 +1,20 @@
|
|
1
|
+
module Paddle
|
2
|
+
class SimulationRun < Object
|
3
|
+
class << self
|
4
|
+
def create(simulation_id:, **params)
|
5
|
+
response = Client.post_request("simulations/#{simulation_id}/runs", body: {})
|
6
|
+
SimulationRun.new(response.body["data"])
|
7
|
+
end
|
8
|
+
|
9
|
+
def retrieve(simulation_id:, id:)
|
10
|
+
response = Client.get_request("simulations/#{simulation_id}/runs/#{id}")
|
11
|
+
SimulationRun.new(response.body["data"])
|
12
|
+
end
|
13
|
+
|
14
|
+
def events(simulation_id:, id:)
|
15
|
+
response = Client.get_request("simulations/#{simulation_id}/runs/#{id}/events")
|
16
|
+
Collection.from_response(response, type: SimulationRunEvent)
|
17
|
+
end
|
18
|
+
end
|
19
|
+
end
|
20
|
+
end
|
@@ -0,0 +1,15 @@
|
|
1
|
+
module Paddle
|
2
|
+
class SimulationRunEvent < Object
|
3
|
+
class << self
|
4
|
+
def retrieve(simulation_id:, run_id:, id:)
|
5
|
+
response = Client.get_request("simulations/#{simulation_id}/runs/#{run_id}/events/#{id}")
|
6
|
+
SimulationRunEvent.new(response.body["data"])
|
7
|
+
end
|
8
|
+
|
9
|
+
def replay(simulation_id:, run_id:, id:)
|
10
|
+
response = Client.post_request("simulations/#{simulation_id}/runs/#{run_id}/events/#{id}/replay")
|
11
|
+
SimulationRunEvent.new(response.body["data"])
|
12
|
+
end
|
13
|
+
end
|
14
|
+
end
|
15
|
+
end
|
data/lib/paddle/version.rb
CHANGED
data/lib/paddle.rb
CHANGED
@@ -43,6 +43,11 @@ module Paddle
|
|
43
43
|
autoload :NotificationSetting, "paddle/models/notification_setting"
|
44
44
|
autoload :Notification, "paddle/models/notification"
|
45
45
|
autoload :Report, "paddle/models/report"
|
46
|
+
autoload :SimulationType, "paddle/models/simulation_type"
|
47
|
+
autoload :Simulation, "paddle/models/simulation"
|
48
|
+
autoload :SimulationRun, "paddle/models/simulation_run"
|
49
|
+
autoload :SimulationRunEvent, "paddle/models/simulation_run_event"
|
50
|
+
autoload :PortalSession, "paddle/models/portal_session"
|
46
51
|
|
47
52
|
autoload :NotificationLog, "paddle/models/notification_log"
|
48
53
|
autoload :CreditBalance, "paddle/models/credit_balance"
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: paddle
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 2.
|
4
|
+
version: 2.7.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Dean Perry
|
8
8
|
autorequire:
|
9
9
|
bindir: exe
|
10
10
|
cert_chain: []
|
11
|
-
date: 2024-
|
11
|
+
date: 2024-11-13 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: faraday
|
@@ -97,10 +97,15 @@ files:
|
|
97
97
|
- lib/paddle/models/notification.rb
|
98
98
|
- lib/paddle/models/notification_log.rb
|
99
99
|
- lib/paddle/models/notification_setting.rb
|
100
|
+
- lib/paddle/models/portal_session.rb
|
100
101
|
- lib/paddle/models/price.rb
|
101
102
|
- lib/paddle/models/pricing_preview.rb
|
102
103
|
- lib/paddle/models/product.rb
|
103
104
|
- lib/paddle/models/report.rb
|
105
|
+
- lib/paddle/models/simulation.rb
|
106
|
+
- lib/paddle/models/simulation_run.rb
|
107
|
+
- lib/paddle/models/simulation_run_event.rb
|
108
|
+
- lib/paddle/models/simulation_type.rb
|
104
109
|
- lib/paddle/models/subscription.rb
|
105
110
|
- lib/paddle/models/transaction.rb
|
106
111
|
- lib/paddle/object.rb
|
@@ -126,7 +131,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
126
131
|
- !ruby/object:Gem::Version
|
127
132
|
version: '0'
|
128
133
|
requirements: []
|
129
|
-
rubygems_version: 3.5.
|
134
|
+
rubygems_version: 3.5.16
|
130
135
|
signing_key:
|
131
136
|
specification_version: 4
|
132
137
|
summary: Ruby library for the Paddle Billing & Classic APIs
|