gocardless_pro 2.55.0 → 2.57.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: a70aec41dcf3f0306b0358bb4b883594f3662c92d14b6424ea6a1563a4568dfc
4
- data.tar.gz: 1c0a8185eba12c72f38fdbed514140f7128132b1b8407508bf123634d59d61df
3
+ metadata.gz: a0a146b35e39aaaec207ce920824529baf883e1a47f145ca7925de250438aab9
4
+ data.tar.gz: 688023c522f8547e097e53ec3ef20fc11bf06d1d12a2149c97383d7bf6b3ead0
5
5
  SHA512:
6
- metadata.gz: 527f1b09398fb3953a4b3f8f4844ef265cc0c00e53dbf2464ec71acdf5ae9258c8220cef3ea85992fbf199fa6026499372b94cba96afc876d92ccc7af5dc8520
7
- data.tar.gz: a02c87b919cfea0934a4afdbd01f9fc70d8ed3f98b27e1af4f4ed0790a48416a3402999f0527f76d863a2af441b22897bebe69eb5af5b889306cdafdebb942cb
6
+ metadata.gz: b1fc013bde352a7494de64b4625e588825bd7a2411ad4cbed44f6b79d42751ef7add42013e6e4ef18e37c4d439fc3a16acdb749cb2286a90b486c5c3e41eee75
7
+ data.tar.gz: d97c7be78b0af2dd1d1d3f31265db04761055d2fd4cb16de12945cd28ba4c8ba66ed6471d7a014b5e8723e6ba7d4a3d5f23ab770c2a4fde8f823c4fbd00c8219
@@ -68,6 +68,11 @@ module GoCardlessPro
68
68
  @events ||= Services::EventsService.new(@api_service)
69
69
  end
70
70
 
71
+ # Access to the service for export to make API calls
72
+ def exports
73
+ @exports ||= Services::ExportsService.new(@api_service)
74
+ end
75
+
71
76
  # Access to the service for instalment_schedule to make API calls
72
77
  def instalment_schedules
73
78
  @instalment_schedules ||= Services::InstalmentSchedulesService.new(@api_service)
@@ -78,6 +83,11 @@ module GoCardlessPro
78
83
  @institutions ||= Services::InstitutionsService.new(@api_service)
79
84
  end
80
85
 
86
+ # Access to the service for logo to make API calls
87
+ def logos
88
+ @logos ||= Services::LogosService.new(@api_service)
89
+ end
90
+
81
91
  # Access to the service for mandate to make API calls
82
92
  def mandates
83
93
  @mandates ||= Services::MandatesService.new(@api_service)
@@ -108,6 +118,11 @@ module GoCardlessPro
108
118
  @payer_authorisations ||= Services::PayerAuthorisationsService.new(@api_service)
109
119
  end
110
120
 
121
+ # Access to the service for payer_theme to make API calls
122
+ def payer_themes
123
+ @payer_themes ||= Services::PayerThemesService.new(@api_service)
124
+ end
125
+
111
126
  # Access to the service for payment to make API calls
112
127
  def payments
113
128
  @payments ||= Services::PaymentsService.new(@api_service)
@@ -218,7 +233,7 @@ module GoCardlessPro
218
233
  'User-Agent' => "#{user_agent}",
219
234
  'Content-Type' => 'application/json',
220
235
  'GoCardless-Client-Library' => 'gocardless-pro-ruby',
221
- 'GoCardless-Client-Version' => '2.55.0',
236
+ 'GoCardless-Client-Version' => '2.57.0',
222
237
  },
223
238
  }
224
239
  end
@@ -0,0 +1,44 @@
1
+ #
2
+ # This client is automatically generated from a template and JSON schema definition.
3
+ # See https://github.com/gocardless/gocardless-pro-ruby#contributing before editing.
4
+ #
5
+
6
+ require 'uri'
7
+
8
+ module GoCardlessPro
9
+ # A module containing classes for each of the resources in the GC Api
10
+ module Resources
11
+ # Represents an instance of a export resource returned from the API
12
+
13
+ # File-based exports of data
14
+ class Export
15
+ attr_reader :created_at
16
+ attr_reader :currency
17
+ attr_reader :download_url
18
+ attr_reader :export_type
19
+ attr_reader :id
20
+
21
+ # Initialize a export resource instance
22
+ # @param object [Hash] an object returned from the API
23
+ def initialize(object, response = nil)
24
+ @object = object
25
+
26
+ @created_at = object['created_at']
27
+ @currency = object['currency']
28
+ @download_url = object['download_url']
29
+ @export_type = object['export_type']
30
+ @id = object['id']
31
+ @response = response
32
+ end
33
+
34
+ def api_response
35
+ ApiResponse.new(@response)
36
+ end
37
+
38
+ # Provides the export resource as a hash of all its readable attributes
39
+ def to_h
40
+ @object
41
+ end
42
+ end
43
+ end
44
+ end
@@ -0,0 +1,38 @@
1
+ #
2
+ # This client is automatically generated from a template and JSON schema definition.
3
+ # See https://github.com/gocardless/gocardless-pro-ruby#contributing before editing.
4
+ #
5
+
6
+ require 'uri'
7
+
8
+ module GoCardlessPro
9
+ # A module containing classes for each of the resources in the GC Api
10
+ module Resources
11
+ # Represents an instance of a logo resource returned from the API
12
+
13
+ # Logos are image uploads that, when associated with a creditor, are shown
14
+ # on the [billing request flow](#billing-requests-billing-request-flows)
15
+ # payment pages.
16
+ class Logo
17
+ attr_reader :id
18
+
19
+ # Initialize a logo resource instance
20
+ # @param object [Hash] an object returned from the API
21
+ def initialize(object, response = nil)
22
+ @object = object
23
+
24
+ @id = object['id']
25
+ @response = response
26
+ end
27
+
28
+ def api_response
29
+ ApiResponse.new(@response)
30
+ end
31
+
32
+ # Provides the logo resource as a hash of all its readable attributes
33
+ def to_h
34
+ @object
35
+ end
36
+ end
37
+ end
38
+ end
@@ -0,0 +1,36 @@
1
+ #
2
+ # This client is automatically generated from a template and JSON schema definition.
3
+ # See https://github.com/gocardless/gocardless-pro-ruby#contributing before editing.
4
+ #
5
+
6
+ require 'uri'
7
+
8
+ module GoCardlessPro
9
+ # A module containing classes for each of the resources in the GC Api
10
+ module Resources
11
+ # Represents an instance of a payer_theme resource returned from the API
12
+
13
+ # Custom colour themes for payment pages and customer notifications.
14
+ class PayerTheme
15
+ attr_reader :id
16
+
17
+ # Initialize a payer_theme resource instance
18
+ # @param object [Hash] an object returned from the API
19
+ def initialize(object, response = nil)
20
+ @object = object
21
+
22
+ @id = object['id']
23
+ @response = response
24
+ end
25
+
26
+ def api_response
27
+ ApiResponse.new(@response)
28
+ end
29
+
30
+ # Provides the payer_theme resource as a hash of all its readable attributes
31
+ def to_h
32
+ @object
33
+ end
34
+ end
35
+ end
36
+ end
@@ -82,6 +82,7 @@ module GoCardlessPro
82
82
  attr_reader :metadata
83
83
  attr_reader :month
84
84
  attr_reader :name
85
+ attr_reader :parent_plan_paused
85
86
  attr_reader :payment_reference
86
87
  attr_reader :retry_if_possible
87
88
  attr_reader :start_date
@@ -108,6 +109,7 @@ module GoCardlessPro
108
109
  @metadata = object['metadata']
109
110
  @month = object['month']
110
111
  @name = object['name']
112
+ @parent_plan_paused = object['parent_plan_paused']
111
113
  @payment_reference = object['payment_reference']
112
114
  @retry_if_possible = object['retry_if_possible']
113
115
  @start_date = object['start_date']
@@ -0,0 +1,75 @@
1
+ require_relative './base_service'
2
+
3
+ # encoding: utf-8
4
+ #
5
+ # This client is automatically generated from a template and JSON schema definition.
6
+ # See https://github.com/gocardless/gocardless-pro-ruby#contributing before editing.
7
+ #
8
+
9
+ module GoCardlessPro
10
+ module Services
11
+ # Service for making requests to the Export endpoints
12
+ class ExportsService < BaseService
13
+ # Returns a single export.
14
+ # Example URL: /exports/:identity
15
+ #
16
+ # @param identity # Unique identifier, beginning with "EX".
17
+ # @param options [Hash] parameters as a hash, under a params key.
18
+ def get(identity, options = {})
19
+ path = sub_url('/exports/:identity', {
20
+ 'identity' => identity,
21
+ })
22
+
23
+ options[:retry_failures] = true
24
+
25
+ response = make_request(:get, path, options)
26
+
27
+ return if response.body.nil?
28
+
29
+ Resources::Export.new(unenvelope_body(response.body), response)
30
+ end
31
+
32
+ # Returns a list of exports which are available for download.
33
+ # Example URL: /exports
34
+ # @param options [Hash] parameters as a hash, under a params key.
35
+ def list(options = {})
36
+ path = '/exports'
37
+
38
+ options[:retry_failures] = true
39
+
40
+ response = make_request(:get, path, options)
41
+
42
+ ListResponse.new(
43
+ response: response,
44
+ unenveloped_body: unenvelope_body(response.body),
45
+ resource_class: Resources::Export
46
+ )
47
+ end
48
+
49
+ # Get a lazily enumerated list of all the items returned. This is similar to the `list` method but will paginate for you automatically.
50
+ #
51
+ # @param options [Hash] parameters as a hash. If the request is a GET, these will be converted to query parameters.
52
+ # Otherwise they will be the body of the request.
53
+ def all(options = {})
54
+ Paginator.new(
55
+ service: self,
56
+ options: options
57
+ ).enumerator
58
+ end
59
+
60
+ private
61
+
62
+ # Unenvelope the response of the body using the service's `envelope_key`
63
+ #
64
+ # @param body [Hash]
65
+ def unenvelope_body(body)
66
+ body[envelope_key] || body['data']
67
+ end
68
+
69
+ # return the key which API responses will envelope data under
70
+ def envelope_key
71
+ 'exports'
72
+ end
73
+ end
74
+ end
75
+ end
@@ -0,0 +1,53 @@
1
+ require_relative './base_service'
2
+
3
+ # encoding: utf-8
4
+ #
5
+ # This client is automatically generated from a template and JSON schema definition.
6
+ # See https://github.com/gocardless/gocardless-pro-ruby#contributing before editing.
7
+ #
8
+
9
+ module GoCardlessPro
10
+ module Services
11
+ # Service for making requests to the Logo endpoints
12
+ class LogosService < BaseService
13
+ # Creates a new logo associated with a creditor. If a creditor already has a
14
+ # logo, this will update the existing logo linked to the creditor.
15
+ #
16
+ # We support JPG and PNG formats. Your logo will be scaled to a maximum of 300px
17
+ # by 40px. For more guidance on how to upload logos that will look
18
+ # great across your customer payment page and notification emails see
19
+ # [here](https://developer.gocardless.com/gc-embed/setting-up-branding#tips_for_uploading_your_logo).
20
+ # Example URL: /branding/logos
21
+ # @param options [Hash] parameters as a hash, under a params key.
22
+ def create_for_creditor(options = {})
23
+ path = '/branding/logos'
24
+
25
+ params = options.delete(:params) || {}
26
+ options[:params] = {}
27
+ options[:params][envelope_key] = params
28
+
29
+ options[:retry_failures] = true
30
+
31
+ response = make_request(:post, path, options)
32
+
33
+ return if response.body.nil?
34
+
35
+ Resources::Logo.new(unenvelope_body(response.body), response)
36
+ end
37
+
38
+ private
39
+
40
+ # Unenvelope the response of the body using the service's `envelope_key`
41
+ #
42
+ # @param body [Hash]
43
+ def unenvelope_body(body)
44
+ body[envelope_key] || body['data']
45
+ end
46
+
47
+ # return the key which API responses will envelope data under
48
+ def envelope_key
49
+ 'logos'
50
+ end
51
+ end
52
+ end
53
+ end
@@ -0,0 +1,49 @@
1
+ require_relative './base_service'
2
+
3
+ # encoding: utf-8
4
+ #
5
+ # This client is automatically generated from a template and JSON schema definition.
6
+ # See https://github.com/gocardless/gocardless-pro-ruby#contributing before editing.
7
+ #
8
+
9
+ module GoCardlessPro
10
+ module Services
11
+ # Service for making requests to the PayerTheme endpoints
12
+ class PayerThemesService < BaseService
13
+ # Creates a new payer theme associated with a creditor. If a creditor already
14
+ # has payer themes, this will update the existing payer theme linked to the
15
+ # creditor.
16
+ # Example URL: /branding/payer_themes
17
+ # @param options [Hash] parameters as a hash, under a params key.
18
+ def create_for_creditor(options = {})
19
+ path = '/branding/payer_themes'
20
+
21
+ params = options.delete(:params) || {}
22
+ options[:params] = {}
23
+ options[:params][envelope_key] = params
24
+
25
+ options[:retry_failures] = true
26
+
27
+ response = make_request(:post, path, options)
28
+
29
+ return if response.body.nil?
30
+
31
+ Resources::PayerTheme.new(unenvelope_body(response.body), response)
32
+ end
33
+
34
+ private
35
+
36
+ # Unenvelope the response of the body using the service's `envelope_key`
37
+ #
38
+ # @param body [Hash]
39
+ def unenvelope_body(body)
40
+ body[envelope_key] || body['data']
41
+ end
42
+
43
+ # return the key which API responses will envelope data under
44
+ def envelope_key
45
+ 'payer_themes'
46
+ end
47
+ end
48
+ end
49
+ end
@@ -3,5 +3,5 @@ end
3
3
 
4
4
  module GoCardlessPro
5
5
  # Current version of the GC gem
6
- VERSION = '2.55.0'
6
+ VERSION = '2.57.0'
7
7
  end
@@ -78,12 +78,18 @@ require_relative 'gocardless_pro/services/customer_notifications_service'
78
78
  require_relative 'gocardless_pro/resources/event'
79
79
  require_relative 'gocardless_pro/services/events_service'
80
80
 
81
+ require_relative 'gocardless_pro/resources/export'
82
+ require_relative 'gocardless_pro/services/exports_service'
83
+
81
84
  require_relative 'gocardless_pro/resources/instalment_schedule'
82
85
  require_relative 'gocardless_pro/services/instalment_schedules_service'
83
86
 
84
87
  require_relative 'gocardless_pro/resources/institution'
85
88
  require_relative 'gocardless_pro/services/institutions_service'
86
89
 
90
+ require_relative 'gocardless_pro/resources/logo'
91
+ require_relative 'gocardless_pro/services/logos_service'
92
+
87
93
  require_relative 'gocardless_pro/resources/mandate'
88
94
  require_relative 'gocardless_pro/services/mandates_service'
89
95
 
@@ -102,6 +108,9 @@ require_relative 'gocardless_pro/services/negative_balance_limits_service'
102
108
  require_relative 'gocardless_pro/resources/payer_authorisation'
103
109
  require_relative 'gocardless_pro/services/payer_authorisations_service'
104
110
 
111
+ require_relative 'gocardless_pro/resources/payer_theme'
112
+ require_relative 'gocardless_pro/services/payer_themes_service'
113
+
105
114
  require_relative 'gocardless_pro/resources/payment'
106
115
  require_relative 'gocardless_pro/services/payments_service'
107
116
 
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: gocardless_pro
3
3
  version: !ruby/object:Gem::Version
4
- version: 2.55.0
4
+ version: 2.57.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - GoCardless
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2024-05-13 00:00:00.000000000 Z
11
+ date: 2024-08-05 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: faraday
@@ -125,14 +125,17 @@ files:
125
125
  - lib/gocardless_pro/resources/customer_bank_account.rb
126
126
  - lib/gocardless_pro/resources/customer_notification.rb
127
127
  - lib/gocardless_pro/resources/event.rb
128
+ - lib/gocardless_pro/resources/export.rb
128
129
  - lib/gocardless_pro/resources/instalment_schedule.rb
129
130
  - lib/gocardless_pro/resources/institution.rb
131
+ - lib/gocardless_pro/resources/logo.rb
130
132
  - lib/gocardless_pro/resources/mandate.rb
131
133
  - lib/gocardless_pro/resources/mandate_import.rb
132
134
  - lib/gocardless_pro/resources/mandate_import_entry.rb
133
135
  - lib/gocardless_pro/resources/mandate_pdf.rb
134
136
  - lib/gocardless_pro/resources/negative_balance_limit.rb
135
137
  - lib/gocardless_pro/resources/payer_authorisation.rb
138
+ - lib/gocardless_pro/resources/payer_theme.rb
136
139
  - lib/gocardless_pro/resources/payment.rb
137
140
  - lib/gocardless_pro/resources/payout.rb
138
141
  - lib/gocardless_pro/resources/payout_item.rb
@@ -160,14 +163,17 @@ files:
160
163
  - lib/gocardless_pro/services/customer_notifications_service.rb
161
164
  - lib/gocardless_pro/services/customers_service.rb
162
165
  - lib/gocardless_pro/services/events_service.rb
166
+ - lib/gocardless_pro/services/exports_service.rb
163
167
  - lib/gocardless_pro/services/instalment_schedules_service.rb
164
168
  - lib/gocardless_pro/services/institutions_service.rb
169
+ - lib/gocardless_pro/services/logos_service.rb
165
170
  - lib/gocardless_pro/services/mandate_import_entries_service.rb
166
171
  - lib/gocardless_pro/services/mandate_imports_service.rb
167
172
  - lib/gocardless_pro/services/mandate_pdfs_service.rb
168
173
  - lib/gocardless_pro/services/mandates_service.rb
169
174
  - lib/gocardless_pro/services/negative_balance_limits_service.rb
170
175
  - lib/gocardless_pro/services/payer_authorisations_service.rb
176
+ - lib/gocardless_pro/services/payer_themes_service.rb
171
177
  - lib/gocardless_pro/services/payments_service.rb
172
178
  - lib/gocardless_pro/services/payout_items_service.rb
173
179
  - lib/gocardless_pro/services/payouts_service.rb