payabli 3.0.5 → 3.0.7

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 (87) hide show
  1. checksums.yaml +4 -4
  2. data/.fern/metadata.json +4 -4
  3. data/README.md +4 -1
  4. data/lib/payabli/bill/client.rb +119 -0
  5. data/lib/payabli/boarding/client.rb +209 -0
  6. data/lib/payabli/case_management/client.rb +662 -0
  7. data/lib/payabli/case_management/types/assign_case_request.rb +15 -0
  8. data/lib/payabli/case_management/types/create_bank_account_change_case_request.rb +31 -0
  9. data/lib/payabli/case_management/types/list_cases_case_management_request.rb +17 -0
  10. data/lib/payabli/case_management/types/list_messages_case_management_request.rb +15 -0
  11. data/lib/payabli/case_management/types/post_case_message_request.rb +13 -0
  12. data/lib/payabli/case_management/types/transition_case_request.rb +17 -0
  13. data/lib/payabli/case_management/types/upload_attachment_case_management_request.rb +11 -0
  14. data/lib/payabli/case_management/types/validate_bank_account_change_request.rb +23 -0
  15. data/lib/payabli/charge_backs/client.rb +20 -0
  16. data/lib/payabli/check_capture/client.rb +10 -0
  17. data/lib/payabli/client.rb +34 -5
  18. data/lib/payabli/cloud/client.rb +29 -0
  19. data/lib/payabli/customer/client.rb +54 -0
  20. data/lib/payabli/export/client.rb +321 -0
  21. data/lib/payabli/funding/client.rb +9 -0
  22. data/lib/payabli/ghost_card/client.rb +31 -0
  23. data/lib/payabli/hosted_payment_pages/client.rb +23 -0
  24. data/lib/payabli/import/client.rb +15 -0
  25. data/lib/payabli/internal/http/raw_client.rb +26 -0
  26. data/lib/payabli/internal/oauth_provider.rb +73 -0
  27. data/lib/payabli/internal/routing_auth_provider.rb +51 -0
  28. data/lib/payabli/invoice/client.rb +118 -0
  29. data/lib/payabli/line_item/client.rb +43 -0
  30. data/lib/payabli/management/client.rb +13 -0
  31. data/lib/payabli/money_in/client.rb +238 -0
  32. data/lib/payabli/money_out/client.rb +111 -3
  33. data/lib/payabli/money_out/types/capture_all_out_request.rb +2 -0
  34. data/lib/payabli/money_out/types/capture_out_request.rb +2 -0
  35. data/lib/payabli/money_out/types/request_out_authorize.rb +2 -0
  36. data/lib/payabli/notification/client.rb +46 -0
  37. data/lib/payabli/notificationlogs/client.rb +27 -0
  38. data/lib/payabli/ocr/client.rb +10 -0
  39. data/lib/payabli/organization/client.rb +91 -0
  40. data/lib/payabli/payment_link/client.rb +367 -0
  41. data/lib/payabli/payment_method_domain/client.rb +56 -0
  42. data/lib/payabli/payout_subscription/client.rb +50 -0
  43. data/lib/payabli/paypoint/client.rb +56 -0
  44. data/lib/payabli/query/client.rb +414 -0
  45. data/lib/payabli/statistic/client.rb +39 -0
  46. data/lib/payabli/subscription/client.rb +46 -0
  47. data/lib/payabli/templates/client.rb +28 -0
  48. data/lib/payabli/token/client.rb +8 -0
  49. data/lib/payabli/token_storage/client.rb +55 -0
  50. data/lib/payabli/types/attachment_response.rb +24 -0
  51. data/lib/payabli/types/available_transitions_response.rb +10 -0
  52. data/lib/payabli/types/bank_account_change_parameters.rb +30 -0
  53. data/lib/payabli/types/bank_account_change_parameters_type.rb +11 -0
  54. data/lib/payabli/types/bank_account_services.rb +12 -0
  55. data/lib/payabli/types/bank_review_decision_reason.rb +14 -0
  56. data/lib/payabli/types/bank_verification_metadata.rb +14 -0
  57. data/lib/payabli/types/case_list_response.rb +12 -0
  58. data/lib/payabli/types/case_list_summary.rb +20 -0
  59. data/lib/payabli/types/case_management_bank_account_function.rb +17 -0
  60. data/lib/payabli/types/case_metadata.rb +12 -0
  61. data/lib/payabli/types/case_response.rb +50 -0
  62. data/lib/payabli/types/case_state.rb +22 -0
  63. data/lib/payabli/types/case_trigger.rb +22 -0
  64. data/lib/payabli/types/case_type.rb +11 -0
  65. data/lib/payabli/types/message_page.rb +12 -0
  66. data/lib/payabli/types/money_in_service.rb +17 -0
  67. data/lib/payabli/types/money_out_service.rb +17 -0
  68. data/lib/payabli/types/notification_content.rb +1 -1
  69. data/lib/payabli/types/notification_content_event_type.rb +14 -80
  70. data/lib/payabli/types/notification_standard_request_content_event_type.rb +97 -111
  71. data/lib/payabli/types/org_ref.rb +12 -0
  72. data/lib/payabli/types/paypoint_ref.rb +12 -0
  73. data/lib/payabli/types/posted_message.rb +14 -0
  74. data/lib/payabli/types/pre_creation_validation_result.rb +16 -0
  75. data/lib/payabli/types/review_decision_metadata.rb +12 -0
  76. data/lib/payabli/types/room_message_view.rb +18 -0
  77. data/lib/payabli/types/state_transition_response.rb +26 -0
  78. data/lib/payabli/types/user_ref.rb +12 -0
  79. data/lib/payabli/types/verification_code.rb +14 -0
  80. data/lib/payabli/user/client.rb +67 -0
  81. data/lib/payabli/vendor/client.rb +102 -0
  82. data/lib/payabli/version.rb +1 -1
  83. data/lib/payabli/wallet/client.rb +34 -0
  84. data/lib/payabli.rb +38 -0
  85. data/reference.md +1401 -223
  86. data/wiremock/wiremock-mappings.json +450 -1303
  87. metadata +40 -2
@@ -0,0 +1,31 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Payabli
4
+ module CaseManagement
5
+ module Types
6
+ class CreateBankAccountChangeCaseRequest < Internal::Types::Model
7
+ field :paypoint_id, -> { Integer }, optional: false, nullable: false, api_name: "paypointId"
8
+
9
+ field :nickname, -> { String }, optional: false, nullable: false
10
+
11
+ field :bank_name, -> { String }, optional: false, nullable: false, api_name: "bankName"
12
+
13
+ field :routing_number, -> { String }, optional: false, nullable: false, api_name: "routingNumber"
14
+
15
+ field :account_number, -> { String }, optional: false, nullable: false, api_name: "accountNumber"
16
+
17
+ field :account_type, -> { String }, optional: false, nullable: false, api_name: "accountType"
18
+
19
+ field :bank_account_holder_type, -> { String }, optional: false, nullable: false, api_name: "bankAccountHolderType"
20
+
21
+ field :bank_account_function, -> { Payabli::Types::CaseManagementBankAccountFunction }, optional: false, nullable: false, api_name: "bankAccountFunction"
22
+
23
+ field :services, -> { Payabli::Types::BankAccountServices }, optional: false, nullable: false
24
+
25
+ field :default, -> { Internal::Types::Boolean }, optional: false, nullable: false
26
+
27
+ field :schedule_for, -> { String }, optional: true, nullable: false, api_name: "scheduleFor"
28
+ end
29
+ end
30
+ end
31
+ end
@@ -0,0 +1,17 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Payabli
4
+ module CaseManagement
5
+ module Types
6
+ class ListCasesCaseManagementRequest < Internal::Types::Model
7
+ field :organization_id, -> { Integer }, optional: false, nullable: false, api_name: "organizationId"
8
+
9
+ field :from_record, -> { Integer }, optional: true, nullable: false, api_name: "fromRecord"
10
+
11
+ field :limit_record, -> { Integer }, optional: true, nullable: false, api_name: "limitRecord"
12
+
13
+ field :sort_by, -> { String }, optional: true, nullable: false, api_name: "sortBy"
14
+ end
15
+ end
16
+ end
17
+ end
@@ -0,0 +1,15 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Payabli
4
+ module CaseManagement
5
+ module Types
6
+ class ListMessagesCaseManagementRequest < Internal::Types::Model
7
+ field :case_uuid, -> { String }, optional: false, nullable: false, api_name: "caseUuid"
8
+
9
+ field :limit, -> { Integer }, optional: true, nullable: false
10
+
11
+ field :cursor, -> { String }, optional: true, nullable: false
12
+ end
13
+ end
14
+ end
15
+ end
@@ -0,0 +1,13 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Payabli
4
+ module CaseManagement
5
+ module Types
6
+ class PostCaseMessageRequest < Internal::Types::Model
7
+ field :case_uuid, -> { String }, optional: false, nullable: false, api_name: "caseUuid"
8
+
9
+ field :content, -> { String }, optional: false, nullable: false
10
+ end
11
+ end
12
+ end
13
+ end
@@ -0,0 +1,17 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Payabli
4
+ module CaseManagement
5
+ module Types
6
+ class TransitionCaseRequest < Internal::Types::Model
7
+ field :uuid, -> { String }, optional: false, nullable: false
8
+
9
+ field :trigger, -> { Payabli::Types::CaseTrigger }, optional: false, nullable: false
10
+
11
+ field :reason, -> { String }, optional: false, nullable: false
12
+
13
+ field :decline_reason, -> { Payabli::Types::BankReviewDecisionReason }, optional: true, nullable: false, api_name: "declineReason"
14
+ end
15
+ end
16
+ end
17
+ end
@@ -0,0 +1,11 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Payabli
4
+ module CaseManagement
5
+ module Types
6
+ class UploadAttachmentCaseManagementRequest < Internal::Types::Model
7
+ field :case_uuid, -> { String }, optional: false, nullable: false, api_name: "caseUuid"
8
+ end
9
+ end
10
+ end
11
+ end
@@ -0,0 +1,23 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Payabli
4
+ module CaseManagement
5
+ module Types
6
+ class ValidateBankAccountChangeRequest < Internal::Types::Model
7
+ field :paypoint_id, -> { Integer }, optional: false, nullable: false, api_name: "paypointId"
8
+
9
+ field :routing_number, -> { String }, optional: false, nullable: false, api_name: "routingNumber"
10
+
11
+ field :account_number, -> { String }, optional: false, nullable: false, api_name: "accountNumber"
12
+
13
+ field :account_type, -> { String }, optional: false, nullable: false, api_name: "accountType"
14
+
15
+ field :bank_account_holder_type, -> { String }, optional: false, nullable: false, api_name: "bankAccountHolderType"
16
+
17
+ field :bank_account_function, -> { Payabli::Types::CaseManagementBankAccountFunction }, optional: false, nullable: false, api_name: "bankAccountFunction"
18
+
19
+ field :services, -> { Payabli::Types::BankAccountServices }, optional: false, nullable: false
20
+ end
21
+ end
22
+ end
23
+ end
@@ -22,6 +22,12 @@ module Payabli
22
22
  # @option params [Integer] :id
23
23
  # @option params [String, nil] :idempotency_key
24
24
  #
25
+ # @example
26
+ # client.charge_backs.add_response(
27
+ # id: 1000000,
28
+ # idempotency_key: "6B29FC40-CA47-1067-B31D-00DD010662DA"
29
+ # )
30
+ #
25
31
  # @return [Payabli::Types::AddResponseResponse]
26
32
  def add_response(request_options: {}, **params)
27
33
  params = Payabli::Internal::Types::Utils.normalize_keys(params)
@@ -32,6 +38,7 @@ module Payabli
32
38
  headers = {}
33
39
  headers["idempotencyKey"] = params[:idempotency_key] if params[:idempotency_key]
34
40
 
41
+ headers = @client.auth_headers_for_endpoint(security: [{ "BearerAuth" => [] }, { "APIKeyAuth" => [] }]).merge(headers)
35
42
  request = Payabli::Internal::JSON::Request.new(
36
43
  base_url: request_options[:base_url],
37
44
  method: "POST",
@@ -65,13 +72,18 @@ module Payabli
65
72
  # @option request_options [Integer] :timeout_in_seconds
66
73
  # @option params [Integer] :id
67
74
  #
75
+ # @example
76
+ # client.charge_backs.get_chargeback(id: 1000000)
77
+ #
68
78
  # @return [Payabli::Types::ChargebackQueryRecords]
69
79
  def get_chargeback(request_options: {}, **params)
70
80
  params = Payabli::Internal::Types::Utils.normalize_keys(params)
81
+ headers = @client.auth_headers_for_endpoint(security: [{ "BearerAuth" => [] }, { "APIKeyAuth" => [] }])
71
82
  request = Payabli::Internal::JSON::Request.new(
72
83
  base_url: request_options[:base_url],
73
84
  method: "GET",
74
85
  path: "ChargeBacks/read/#{URI.encode_uri_component(params[:id].to_s)}",
86
+ headers: headers,
75
87
  request_options: request_options
76
88
  )
77
89
  begin
@@ -100,13 +112,21 @@ module Payabli
100
112
  # @option params [Integer] :id
101
113
  # @option params [String] :file_name
102
114
  #
115
+ # @example
116
+ # client.charge_backs.get_chargeback_attachment(
117
+ # id: 1000000,
118
+ # file_name: "fileName"
119
+ # )
120
+ #
103
121
  # @return [String]
104
122
  def get_chargeback_attachment(request_options: {}, **params)
105
123
  params = Payabli::Internal::Types::Utils.normalize_keys(params)
124
+ headers = @client.auth_headers_for_endpoint(security: [{ "BearerAuth" => [] }, { "APIKeyAuth" => [] }])
106
125
  request = Payabli::Internal::JSON::Request.new(
107
126
  base_url: request_options[:base_url],
108
127
  method: "GET",
109
128
  path: "ChargeBacks/getChargebackAttachments/#{URI.encode_uri_component(params[:id].to_s)}/#{URI.encode_uri_component(params[:file_name].to_s)}",
129
+ headers: headers,
110
130
  request_options: request_options
111
131
  )
112
132
  begin
@@ -22,13 +22,23 @@ module Payabli
22
22
  # @option request_options [Hash{String => Object}] :additional_body_parameters
23
23
  # @option request_options [Integer] :timeout_in_seconds
24
24
  #
25
+ # @example
26
+ # client.check_capture.check_processing(
27
+ # entry_point: "8cfec329267",
28
+ # front_image: "/9j/4AAQSkZJRgABAQEASABIAAD...",
29
+ # rear_image: "/9j/4AAQSkZJRgABAQEASABIAAD...",
30
+ # check_amount: 12550
31
+ # )
32
+ #
25
33
  # @return [Payabli::Types::CheckCaptureResponse]
26
34
  def check_processing(request_options: {}, **params)
27
35
  params = Payabli::Internal::Types::Utils.normalize_keys(params)
36
+ headers = @client.auth_headers_for_endpoint(security: [{ "BearerAuth" => [] }, { "APIKeyAuth" => [] }])
28
37
  request = Payabli::Internal::JSON::Request.new(
29
38
  base_url: request_options[:base_url],
30
39
  method: "POST",
31
40
  path: "CheckCapture/CheckProcessing",
41
+ headers: headers,
32
42
  body: Payabli::CheckCapture::Types::CheckCaptureRequestBody.new(params).to_h,
33
43
  request_options: request_options
34
44
  )
@@ -2,19 +2,43 @@
2
2
 
3
3
  module Payabli
4
4
  class Client
5
- # @param api_key [String]
6
5
  # @param base_url [String, nil]
6
+ # @param client_id [String, nil]
7
+ # @param client_secret [String, nil]
8
+ # @param api_key [String]
7
9
  # @param max_retries [Integer]
8
10
  #
9
11
  # @return [void]
10
- def initialize(api_key:, base_url: nil, max_retries: 2)
12
+ def initialize(base_url: nil, client_id: ENV.fetch("OAUTH_CLIENT_ID", nil), client_secret: ENV.fetch("OAUTH_CLIENT_SECRET", nil), api_key: nil, max_retries: 2)
13
+ if !client_id.to_s.empty? && !client_secret.to_s.empty?
14
+ # Create an unauthenticated client for the auth endpoint
15
+ auth_raw_client = Payabli::Internal::Http::RawClient.new(
16
+ base_url: base_url || Payabli::Environment::SANDBOX,
17
+ headers: {
18
+ "X-Fern-Language" => "Ruby"
19
+ }
20
+ )
21
+
22
+ # Create the auth client for token retrieval
23
+ auth_client = Payabli::Token::Client.new(client: auth_raw_client)
24
+
25
+ # Create the OAuth provider with the auth client and credentials
26
+ @oauth_provider = Payabli::Internal::OAuthProvider.new(
27
+ auth_client: auth_client,
28
+ options: { base_url: base_url, client_id: client_id, client_secret: client_secret }
29
+ )
30
+ end
31
+
11
32
  @raw_client = Payabli::Internal::Http::RawClient.new(
12
33
  base_url: base_url || Payabli::Environment::SANDBOX,
13
34
  headers: {
14
- "User-Agent" => "payabli/3.0.5",
15
- "X-Fern-Language" => "Ruby",
16
- requestToken: api_key.to_s
35
+ "User-Agent" => "payabli/3.0.7",
36
+ "X-Fern-Language" => "Ruby"
17
37
  },
38
+ auth_provider: Payabli::Internal::RoutingAuthProvider.new(
39
+ api_key: api_key,
40
+ oauth_provider: @oauth_provider
41
+ ),
18
42
  max_retries: max_retries
19
43
  )
20
44
  end
@@ -183,5 +207,10 @@ module Payabli
183
207
  def charge_backs
184
208
  @charge_backs ||= Payabli::ChargeBacks::Client.new(client: @raw_client)
185
209
  end
210
+
211
+ # @return [Payabli::CaseManagement::Client]
212
+ def case_management
213
+ @case_management ||= Payabli::CaseManagement::Client.new(client: @raw_client)
214
+ end
186
215
  end
187
216
  end
@@ -23,6 +23,13 @@ module Payabli
23
23
  # @option params [String] :entry
24
24
  # @option params [String, nil] :idempotency_key
25
25
  #
26
+ # @example
27
+ # client.cloud.add_device(
28
+ # entry: "8cfec329267",
29
+ # description: "Front Desk POS",
30
+ # registration_code: "YS7DS5"
31
+ # )
32
+ #
26
33
  # @return [Payabli::Types::AddDeviceResponse]
27
34
  def add_device(request_options: {}, **params)
28
35
  params = Payabli::Internal::Types::Utils.normalize_keys(params)
@@ -33,6 +40,7 @@ module Payabli
33
40
  headers = {}
34
41
  headers["idempotencyKey"] = params[:idempotency_key] if params[:idempotency_key]
35
42
 
43
+ headers = @client.auth_headers_for_endpoint(security: [{ "BearerAuth" => [] }, { "APIKeyAuth" => [] }]).merge(headers)
36
44
  request = Payabli::Internal::JSON::Request.new(
37
45
  base_url: request_options[:base_url],
38
46
  method: "POST",
@@ -67,13 +75,21 @@ module Payabli
67
75
  # @option params [String] :entry
68
76
  # @option params [String] :device_id
69
77
  #
78
+ # @example
79
+ # client.cloud.remove_device(
80
+ # entry: "8cfec329267",
81
+ # device_id: "499585-389fj484-3jcj8hj3"
82
+ # )
83
+ #
70
84
  # @return [Payabli::Types::RemoveDeviceResponse]
71
85
  def remove_device(request_options: {}, **params)
72
86
  params = Payabli::Internal::Types::Utils.normalize_keys(params)
87
+ headers = @client.auth_headers_for_endpoint(security: [{ "BearerAuth" => [] }, { "APIKeyAuth" => [] }])
73
88
  request = Payabli::Internal::JSON::Request.new(
74
89
  base_url: request_options[:base_url],
75
90
  method: "DELETE",
76
91
  path: "Cloud/register/#{URI.encode_uri_component(params[:entry].to_s)}/#{URI.encode_uri_component(params[:device_id].to_s)}",
92
+ headers: headers,
77
93
  request_options: request_options
78
94
  )
79
95
  begin
@@ -102,13 +118,21 @@ module Payabli
102
118
  # @option params [String] :entry
103
119
  # @option params [String] :device_id
104
120
  #
121
+ # @example
122
+ # client.cloud.history_device(
123
+ # entry: "8cfec329267",
124
+ # device_id: "499585-389fj484-3jcj8hj3"
125
+ # )
126
+ #
105
127
  # @return [Payabli::Types::CloudQueryApiResponse]
106
128
  def history_device(request_options: {}, **params)
107
129
  params = Payabli::Internal::Types::Utils.normalize_keys(params)
130
+ headers = @client.auth_headers_for_endpoint(security: [{ "BearerAuth" => [] }, { "APIKeyAuth" => [] }])
108
131
  request = Payabli::Internal::JSON::Request.new(
109
132
  base_url: request_options[:base_url],
110
133
  method: "GET",
111
134
  path: "Cloud/history/#{URI.encode_uri_component(params[:entry].to_s)}/#{URI.encode_uri_component(params[:device_id].to_s)}",
135
+ headers: headers,
112
136
  request_options: request_options
113
137
  )
114
138
  begin
@@ -140,16 +164,21 @@ module Payabli
140
164
  # @option params [String] :entry
141
165
  # @option params [Boolean, nil] :force_refresh
142
166
  #
167
+ # @example
168
+ # client.cloud.list_device(entry: "8cfec329267")
169
+ #
143
170
  # @return [Payabli::Types::CloudQueryApiResponse]
144
171
  def list_device(request_options: {}, **params)
145
172
  params = Payabli::Internal::Types::Utils.normalize_keys(params)
146
173
  query_params = {}
147
174
  query_params["forceRefresh"] = params[:force_refresh] if params.key?(:force_refresh)
148
175
 
176
+ headers = @client.auth_headers_for_endpoint(security: [{ "BearerAuth" => [] }, { "APIKeyAuth" => [] }])
149
177
  request = Payabli::Internal::JSON::Request.new(
150
178
  base_url: request_options[:base_url],
151
179
  method: "GET",
152
180
  path: "Cloud/list/#{URI.encode_uri_component(params[:entry].to_s)}",
181
+ headers: headers,
153
182
  query: query_params,
154
183
  request_options: request_options
155
184
  )
@@ -26,6 +26,22 @@ module Payabli
26
26
  # @option params [Integer, nil] :replace_existing
27
27
  # @option params [String, nil] :idempotency_key
28
28
  #
29
+ # @example
30
+ # client.customer.add_customer(
31
+ # entry: "8cfec329267",
32
+ # customer_number: "C-90010",
33
+ # firstname: "Irene",
34
+ # lastname: "Canizales",
35
+ # email: "irene@canizalesconcrete.com",
36
+ # address_1: "123 Bishop's Trail",
37
+ # city: "Mountain City",
38
+ # state: "TN",
39
+ # zip: "37612",
40
+ # country: "US",
41
+ # time_zone: -5,
42
+ # identifier_fields: ["email"]
43
+ # )
44
+ #
29
45
  # @return [Payabli::Types::PayabliApiResponseCustomerQuery]
30
46
  def add_customer(request_options: {}, **params)
31
47
  params = Payabli::Internal::Types::Utils.normalize_keys(params)
@@ -41,6 +57,7 @@ module Payabli
41
57
  headers = {}
42
58
  headers["idempotencyKey"] = params[:idempotency_key] if params[:idempotency_key]
43
59
 
60
+ headers = @client.auth_headers_for_endpoint(security: [{ "BearerAuth" => [] }, { "APIKeyAuth" => [] }]).merge(headers)
44
61
  request = Payabli::Internal::JSON::Request.new(
45
62
  base_url: request_options[:base_url],
46
63
  method: "POST",
@@ -75,13 +92,18 @@ module Payabli
75
92
  # @option request_options [Integer] :timeout_in_seconds
76
93
  # @option params [Integer] :customer_id
77
94
  #
95
+ # @example
96
+ # client.customer.get_customer(customer_id: 4440)
97
+ #
78
98
  # @return [Payabli::Types::CustomerQueryRecords]
79
99
  def get_customer(request_options: {}, **params)
80
100
  params = Payabli::Internal::Types::Utils.normalize_keys(params)
101
+ headers = @client.auth_headers_for_endpoint(security: [{ "BearerAuth" => [] }, { "APIKeyAuth" => [] }])
81
102
  request = Payabli::Internal::JSON::Request.new(
82
103
  base_url: request_options[:base_url],
83
104
  method: "GET",
84
105
  path: "Customer/#{URI.encode_uri_component(params[:customer_id].to_s)}",
106
+ headers: headers,
85
107
  request_options: request_options
86
108
  )
87
109
  begin
@@ -109,13 +131,27 @@ module Payabli
109
131
  # @option request_options [Integer] :timeout_in_seconds
110
132
  # @option params [Integer] :customer_id
111
133
  #
134
+ # @example
135
+ # client.customer.update_customer(
136
+ # customer_id: 4440,
137
+ # firstname: "Irene",
138
+ # lastname: "Canizales",
139
+ # address_1: "145 Bishop's Trail",
140
+ # city: "Mountain City",
141
+ # state: "TN",
142
+ # zip: "37612",
143
+ # country: "US"
144
+ # )
145
+ #
112
146
  # @return [Payabli::Types::PayabliApiResponse00Responsedatanonobject]
113
147
  def update_customer(request_options: {}, **params)
114
148
  params = Payabli::Internal::Types::Utils.normalize_keys(params)
149
+ headers = @client.auth_headers_for_endpoint(security: [{ "BearerAuth" => [] }, { "APIKeyAuth" => [] }])
115
150
  request = Payabli::Internal::JSON::Request.new(
116
151
  base_url: request_options[:base_url],
117
152
  method: "PUT",
118
153
  path: "Customer/#{URI.encode_uri_component(params[:customer_id].to_s)}",
154
+ headers: headers,
119
155
  body: Payabli::Types::CustomerData.new(params).to_h,
120
156
  request_options: request_options
121
157
  )
@@ -144,13 +180,18 @@ module Payabli
144
180
  # @option request_options [Integer] :timeout_in_seconds
145
181
  # @option params [Integer] :customer_id
146
182
  #
183
+ # @example
184
+ # client.customer.delete_customer(customer_id: 4440)
185
+ #
147
186
  # @return [Payabli::Types::PayabliApiResponse00Responsedatanonobject]
148
187
  def delete_customer(request_options: {}, **params)
149
188
  params = Payabli::Internal::Types::Utils.normalize_keys(params)
189
+ headers = @client.auth_headers_for_endpoint(security: [{ "BearerAuth" => [] }, { "APIKeyAuth" => [] }])
150
190
  request = Payabli::Internal::JSON::Request.new(
151
191
  base_url: request_options[:base_url],
152
192
  method: "DELETE",
153
193
  path: "Customer/#{URI.encode_uri_component(params[:customer_id].to_s)}",
194
+ headers: headers,
154
195
  request_options: request_options
155
196
  )
156
197
  begin
@@ -178,13 +219,18 @@ module Payabli
178
219
  # @option request_options [Integer] :timeout_in_seconds
179
220
  # @option params [Integer] :customer_id
180
221
  #
222
+ # @example
223
+ # client.customer.request_consent(customer_id: 4440)
224
+ #
181
225
  # @return [Payabli::Types::PayabliApiResponse00Responsedatanonobject]
182
226
  def request_consent(request_options: {}, **params)
183
227
  params = Payabli::Internal::Types::Utils.normalize_keys(params)
228
+ headers = @client.auth_headers_for_endpoint(security: [{ "BearerAuth" => [] }, { "APIKeyAuth" => [] }])
184
229
  request = Payabli::Internal::JSON::Request.new(
185
230
  base_url: request_options[:base_url],
186
231
  method: "POST",
187
232
  path: "Customer/#{URI.encode_uri_component(params[:customer_id].to_s)}/consent",
233
+ headers: headers,
188
234
  request_options: request_options
189
235
  )
190
236
  begin
@@ -213,13 +259,21 @@ module Payabli
213
259
  # @option params [Integer] :customer_id
214
260
  # @option params [String] :trans_id
215
261
  #
262
+ # @example
263
+ # client.customer.link_customer_transaction(
264
+ # customer_id: 4440,
265
+ # trans_id: "45-as456777hhhhhhhhhh77777777-324"
266
+ # )
267
+ #
216
268
  # @return [Payabli::Types::PayabliApiResponse00Responsedatanonobject]
217
269
  def link_customer_transaction(request_options: {}, **params)
218
270
  params = Payabli::Internal::Types::Utils.normalize_keys(params)
271
+ headers = @client.auth_headers_for_endpoint(security: [{ "BearerAuth" => [] }, { "APIKeyAuth" => [] }])
219
272
  request = Payabli::Internal::JSON::Request.new(
220
273
  base_url: request_options[:base_url],
221
274
  method: "GET",
222
275
  path: "Customer/link/#{URI.encode_uri_component(params[:customer_id].to_s)}/#{URI.encode_uri_component(params[:trans_id].to_s)}",
276
+ headers: headers,
223
277
  request_options: request_options
224
278
  )
225
279
  begin