card-management-sdk 1.0.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (198) hide show
  1. checksums.yaml +7 -0
  2. data/LICENSE +28 -0
  3. data/README.md +88 -0
  4. data/lib/shell_card_management_ap_is/api_helper.rb +10 -0
  5. data/lib/shell_card_management_ap_is/client.rb +85 -0
  6. data/lib/shell_card_management_ap_is/configuration.rb +117 -0
  7. data/lib/shell_card_management_ap_is/controllers/base_controller.rb +66 -0
  8. data/lib/shell_card_management_ap_is/controllers/card_controller.rb +1047 -0
  9. data/lib/shell_card_management_ap_is/controllers/customer_controller.rb +538 -0
  10. data/lib/shell_card_management_ap_is/controllers/o_auth_authorization_controller.rb +42 -0
  11. data/lib/shell_card_management_ap_is/controllers/restriction_controller.rb +496 -0
  12. data/lib/shell_card_management_ap_is/exceptions/api_exception.rb +10 -0
  13. data/lib/shell_card_management_ap_is/exceptions/default_error_exception.rb +32 -0
  14. data/lib/shell_card_management_ap_is/exceptions/error_object_exception.rb +54 -0
  15. data/lib/shell_card_management_ap_is/exceptions/error_user_access_error1_exception.rb +32 -0
  16. data/lib/shell_card_management_ap_is/exceptions/o_auth_provider_exception.rb +48 -0
  17. data/lib/shell_card_management_ap_is/http/auth/basic_auth.rb +50 -0
  18. data/lib/shell_card_management_ap_is/http/auth/bearer_token.rb +89 -0
  19. data/lib/shell_card_management_ap_is/http/http_call_back.rb +10 -0
  20. data/lib/shell_card_management_ap_is/http/http_method_enum.rb +10 -0
  21. data/lib/shell_card_management_ap_is/http/http_request.rb +10 -0
  22. data/lib/shell_card_management_ap_is/http/http_response.rb +10 -0
  23. data/lib/shell_card_management_ap_is/models/account_access.rb +128 -0
  24. data/lib/shell_card_management_ap_is/models/account_request.rb +252 -0
  25. data/lib/shell_card_management_ap_is/models/account_response.rb +111 -0
  26. data/lib/shell_card_management_ap_is/models/account_response_accounts_items.rb +750 -0
  27. data/lib/shell_card_management_ap_is/models/account_restriction_request.rb +131 -0
  28. data/lib/shell_card_management_ap_is/models/account_restriction_response.rb +60 -0
  29. data/lib/shell_card_management_ap_is/models/account_velocity_limit.rb +145 -0
  30. data/lib/shell_card_management_ap_is/models/accounts.rb +65 -0
  31. data/lib/shell_card_management_ap_is/models/address.rb +174 -0
  32. data/lib/shell_card_management_ap_is/models/audit_request.rb +256 -0
  33. data/lib/shell_card_management_ap_is/models/audit_response.rb +111 -0
  34. data/lib/shell_card_management_ap_is/models/audit_response_audits_items.rb +450 -0
  35. data/lib/shell_card_management_ap_is/models/auto_renew_card_request.rb +111 -0
  36. data/lib/shell_card_management_ap_is/models/auto_renew_card_request_auto_renew_cards_items.rb +98 -0
  37. data/lib/shell_card_management_ap_is/models/auto_renew_card_response.rb +92 -0
  38. data/lib/shell_card_management_ap_is/models/auto_renew_card_response_data_items.rb +64 -0
  39. data/lib/shell_card_management_ap_is/models/bank_account.rb +192 -0
  40. data/lib/shell_card_management_ap_is/models/base_model.rb +62 -0
  41. data/lib/shell_card_management_ap_is/models/bundle_restriction.rb +166 -0
  42. data/lib/shell_card_management_ap_is/models/cancel_card_request.rb +107 -0
  43. data/lib/shell_card_management_ap_is/models/cancel_card_response.rb +127 -0
  44. data/lib/shell_card_management_ap_is/models/card.rb +696 -0
  45. data/lib/shell_card_management_ap_is/models/card_block_schedule.rb +65 -0
  46. data/lib/shell_card_management_ap_is/models/card_day_time_restrictions.rb +159 -0
  47. data/lib/shell_card_management_ap_is/models/card_delivery_contact.rb +230 -0
  48. data/lib/shell_card_management_ap_is/models/card_detail.rb +661 -0
  49. data/lib/shell_card_management_ap_is/models/card_detail_auto_renew_enum.rb +28 -0
  50. data/lib/shell_card_management_ap_is/models/card_details_request.rb +260 -0
  51. data/lib/shell_card_management_ap_is/models/card_details_response.rb +1058 -0
  52. data/lib/shell_card_management_ap_is/models/card_details_response_card_block_schedules_items_all_of0.rb +60 -0
  53. data/lib/shell_card_management_ap_is/models/card_details_response_card_delivery_address.rb +227 -0
  54. data/lib/shell_card_management_ap_is/models/card_details_response_fuel_sets_items.rb +58 -0
  55. data/lib/shell_card_management_ap_is/models/card_details_response_international_pos_language_code_enum.rb +118 -0
  56. data/lib/shell_card_management_ap_is/models/card_details_response_international_pos_language_id_enum.rb +118 -0
  57. data/lib/shell_card_management_ap_is/models/card_details_response_local_pos_language_code_enum.rb +118 -0
  58. data/lib/shell_card_management_ap_is/models/card_details_response_local_pos_language_id_enum.rb +118 -0
  59. data/lib/shell_card_management_ap_is/models/card_details_response_non_fuel_sets_items.rb +58 -0
  60. data/lib/shell_card_management_ap_is/models/card_details_response_pin_delivery_address.rb +231 -0
  61. data/lib/shell_card_management_ap_is/models/card_details_response_pin_type_enum.rb +23 -0
  62. data/lib/shell_card_management_ap_is/models/card_details_response_reissue_setting_enum.rb +26 -0
  63. data/lib/shell_card_management_ap_is/models/card_details_response_renewed_card_reissue_setting_enum.rb +25 -0
  64. data/lib/shell_card_management_ap_is/models/card_details_response_status_id_enum.rb +83 -0
  65. data/lib/shell_card_management_ap_is/models/card_group_request.rb +178 -0
  66. data/lib/shell_card_management_ap_is/models/card_group_response.rb +109 -0
  67. data/lib/shell_card_management_ap_is/models/card_group_response_card_groups_items.rb +301 -0
  68. data/lib/shell_card_management_ap_is/models/card_move_request.rb +163 -0
  69. data/lib/shell_card_management_ap_is/models/card_move_request_cards_items.rb +80 -0
  70. data/lib/shell_card_management_ap_is/models/card_move_response.rb +112 -0
  71. data/lib/shell_card_management_ap_is/models/card_move_response_error_cards_items.rb +112 -0
  72. data/lib/shell_card_management_ap_is/models/card_move_response_successful_requests_items.rb +97 -0
  73. data/lib/shell_card_management_ap_is/models/card_search_response.rb +126 -0
  74. data/lib/shell_card_management_ap_is/models/card_summary_request.rb +52 -0
  75. data/lib/shell_card_management_ap_is/models/card_summary_response.rb +82 -0
  76. data/lib/shell_card_management_ap_is/models/card_type_request.rb +145 -0
  77. data/lib/shell_card_management_ap_is/models/card_type_response.rb +79 -0
  78. data/lib/shell_card_management_ap_is/models/card_type_response_customer_card_types_items.rb +470 -0
  79. data/lib/shell_card_management_ap_is/models/card_type_response_error.rb +60 -0
  80. data/lib/shell_card_management_ap_is/models/card_usage_restrictions.rb +281 -0
  81. data/lib/shell_card_management_ap_is/models/col_co_access.rb +88 -0
  82. data/lib/shell_card_management_ap_is/models/create_bundle_request.rb +167 -0
  83. data/lib/shell_card_management_ap_is/models/create_bundle_request_restrictions.rb +147 -0
  84. data/lib/shell_card_management_ap_is/models/create_bundle_response.rb +98 -0
  85. data/lib/shell_card_management_ap_is/models/create_bundle_response_data_items.rb +125 -0
  86. data/lib/shell_card_management_ap_is/models/create_bundle_response_data_items_cards_items.rb +50 -0
  87. data/lib/shell_card_management_ap_is/models/create_card_group_request.rb +161 -0
  88. data/lib/shell_card_management_ap_is/models/create_card_group_request_cards_items.rb +84 -0
  89. data/lib/shell_card_management_ap_is/models/create_card_group_response.rb +130 -0
  90. data/lib/shell_card_management_ap_is/models/create_card_group_response_error_cards_items.rb +81 -0
  91. data/lib/shell_card_management_ap_is/models/create_card_group_response_successful_requests_items.rb +71 -0
  92. data/lib/shell_card_management_ap_is/models/create_card_response.rb +65 -0
  93. data/lib/shell_card_management_ap_is/models/customer_contract.rb +63 -0
  94. data/lib/shell_card_management_ap_is/models/customer_detail_request.rb +123 -0
  95. data/lib/shell_card_management_ap_is/models/customer_detail_response.rb +437 -0
  96. data/lib/shell_card_management_ap_is/models/day_time_restrictions.rb +162 -0
  97. data/lib/shell_card_management_ap_is/models/default_error_fault.rb +60 -0
  98. data/lib/shell_card_management_ap_is/models/default_error_fault_detail.rb +50 -0
  99. data/lib/shell_card_management_ap_is/models/delete_bundle_request.rb +126 -0
  100. data/lib/shell_card_management_ap_is/models/delete_bundle_response.rb +60 -0
  101. data/lib/shell_card_management_ap_is/models/delivery_address_update.rb +112 -0
  102. data/lib/shell_card_management_ap_is/models/delivery_address_update_references.rb +102 -0
  103. data/lib/shell_card_management_ap_is/models/delivery_address_update_request.rb +129 -0
  104. data/lib/shell_card_management_ap_is/models/delivery_address_update_response.rb +94 -0
  105. data/lib/shell_card_management_ap_is/models/delivery_addresses.rb +258 -0
  106. data/lib/shell_card_management_ap_is/models/eid_access.rb +75 -0
  107. data/lib/shell_card_management_ap_is/models/error_details.rb +81 -0
  108. data/lib/shell_card_management_ap_is/models/error_status.rb +60 -0
  109. data/lib/shell_card_management_ap_is/models/error_user_access.rb +50 -0
  110. data/lib/shell_card_management_ap_is/models/error_user_access_error.rb +60 -0
  111. data/lib/shell_card_management_ap_is/models/finance_currency.rb +98 -0
  112. data/lib/shell_card_management_ap_is/models/generate_pin_key_response.rb +60 -0
  113. data/lib/shell_card_management_ap_is/models/invoice_distribution_method.rb +99 -0
  114. data/lib/shell_card_management_ap_is/models/location_restrictions.rb +125 -0
  115. data/lib/shell_card_management_ap_is/models/location_restrictions_country_restrictions.rb +65 -0
  116. data/lib/shell_card_management_ap_is/models/location_restrictions_network_restrictions_items.rb +77 -0
  117. data/lib/shell_card_management_ap_is/models/location_restrictions_partner_site_restrictions_items.rb +95 -0
  118. data/lib/shell_card_management_ap_is/models/location_restrictions_shell_site_restrictions_items.rb +95 -0
  119. data/lib/shell_card_management_ap_is/models/logged_in_user_request.rb +107 -0
  120. data/lib/shell_card_management_ap_is/models/logged_in_user_response.rb +394 -0
  121. data/lib/shell_card_management_ap_is/models/o_auth_provider_error_enum.rb +45 -0
  122. data/lib/shell_card_management_ap_is/models/o_auth_token.rb +100 -0
  123. data/lib/shell_card_management_ap_is/models/order_card_enquiry.rb +502 -0
  124. data/lib/shell_card_management_ap_is/models/order_card_enquiry_req.rb +208 -0
  125. data/lib/shell_card_management_ap_is/models/order_card_enquiry_req_reference_type_enum.rb +32 -0
  126. data/lib/shell_card_management_ap_is/models/order_card_enquiry_request.rb +51 -0
  127. data/lib/shell_card_management_ap_is/models/order_card_enquiry_response.rb +79 -0
  128. data/lib/shell_card_management_ap_is/models/order_card_request.rb +60 -0
  129. data/lib/shell_card_management_ap_is/models/order_card_response.rb +90 -0
  130. data/lib/shell_card_management_ap_is/models/payer_access.rb +147 -0
  131. data/lib/shell_card_management_ap_is/models/payer_details.rb +1412 -0
  132. data/lib/shell_card_management_ap_is/models/payer_request.rb +126 -0
  133. data/lib/shell_card_management_ap_is/models/payer_response.rb +115 -0
  134. data/lib/shell_card_management_ap_is/models/payers.rb +109 -0
  135. data/lib/shell_card_management_ap_is/models/pin_advice_types.rb +80 -0
  136. data/lib/shell_card_management_ap_is/models/pin_delivery_contact.rb +242 -0
  137. data/lib/shell_card_management_ap_is/models/pin_delivery_details.rb +169 -0
  138. data/lib/shell_card_management_ap_is/models/pin_reminder_card_details.rb +137 -0
  139. data/lib/shell_card_management_ap_is/models/pin_reminder_reference.rb +99 -0
  140. data/lib/shell_card_management_ap_is/models/pin_reminder_request.rb +135 -0
  141. data/lib/shell_card_management_ap_is/models/pin_reminder_response.rb +90 -0
  142. data/lib/shell_card_management_ap_is/models/product_all_of0.rb +62 -0
  143. data/lib/shell_card_management_ap_is/models/product_group.rb +116 -0
  144. data/lib/shell_card_management_ap_is/models/product_restrictions.rb +66 -0
  145. data/lib/shell_card_management_ap_is/models/purchase_categories.rb +114 -0
  146. data/lib/shell_card_management_ap_is/models/purchase_category1_all_of0.rb +140 -0
  147. data/lib/shell_card_management_ap_is/models/purchase_category_request.rb +114 -0
  148. data/lib/shell_card_management_ap_is/models/purchase_category_response.rb +69 -0
  149. data/lib/shell_card_management_ap_is/models/replace_card_settings.rb +641 -0
  150. data/lib/shell_card_management_ap_is/models/restriction_card_request.rb +115 -0
  151. data/lib/shell_card_management_ap_is/models/restriction_card_request_cards_items.rb +220 -0
  152. data/lib/shell_card_management_ap_is/models/restriction_card_response.rb +91 -0
  153. data/lib/shell_card_management_ap_is/models/restriction_card_response_data_items.rb +240 -0
  154. data/lib/shell_card_management_ap_is/models/restriction_search_card_request.rb +50 -0
  155. data/lib/shell_card_management_ap_is/models/restriction_search_card_request_filters.rb +177 -0
  156. data/lib/shell_card_management_ap_is/models/restriction_search_card_request_filters_cards_items.rb +63 -0
  157. data/lib/shell_card_management_ap_is/models/restriction_search_card_response.rb +79 -0
  158. data/lib/shell_card_management_ap_is/models/restriction_search_card_response_data_items.rb +514 -0
  159. data/lib/shell_card_management_ap_is/models/role.rb +102 -0
  160. data/lib/shell_card_management_ap_is/models/schedule_card_block_cards_items.rb +249 -0
  161. data/lib/shell_card_management_ap_is/models/schedule_card_block_request.rb +77 -0
  162. data/lib/shell_card_management_ap_is/models/schedule_card_block_response.rb +91 -0
  163. data/lib/shell_card_management_ap_is/models/schedule_card_block_response_data_items.rb +89 -0
  164. data/lib/shell_card_management_ap_is/models/search_account_limit_request.rb +50 -0
  165. data/lib/shell_card_management_ap_is/models/search_account_limit_request_filters.rb +118 -0
  166. data/lib/shell_card_management_ap_is/models/search_account_limit_response.rb +70 -0
  167. data/lib/shell_card_management_ap_is/models/search_account_limit_response_data.rb +106 -0
  168. data/lib/shell_card_management_ap_is/models/search_card.rb +66 -0
  169. data/lib/shell_card_management_ap_is/models/search_card_request.rb +72 -0
  170. data/lib/shell_card_management_ap_is/models/search_card_response_restrictions.rb +99 -0
  171. data/lib/shell_card_management_ap_is/models/search_product_restriction.rb +78 -0
  172. data/lib/shell_card_management_ap_is/models/search_request.rb +724 -0
  173. data/lib/shell_card_management_ap_is/models/submitted_card.rb +183 -0
  174. data/lib/shell_card_management_ap_is/models/summary_of_bundle_request.rb +50 -0
  175. data/lib/shell_card_management_ap_is/models/summary_of_bundle_response.rb +79 -0
  176. data/lib/shell_card_management_ap_is/models/summary_of_bundle_response_data_items.rb +123 -0
  177. data/lib/shell_card_management_ap_is/models/summary_of_bundle_response_data_items_card_bundles_items.rb +86 -0
  178. data/lib/shell_card_management_ap_is/models/summary_request.rb +598 -0
  179. data/lib/shell_card_management_ap_is/models/summary_response.rb +184 -0
  180. data/lib/shell_card_management_ap_is/models/summaryof_bundle.rb +126 -0
  181. data/lib/shell_card_management_ap_is/models/update_bundle_request.rb +194 -0
  182. data/lib/shell_card_management_ap_is/models/update_bundle_response.rb +70 -0
  183. data/lib/shell_card_management_ap_is/models/update_card.rb +316 -0
  184. data/lib/shell_card_management_ap_is/models/update_card_group_request.rb +258 -0
  185. data/lib/shell_card_management_ap_is/models/update_card_group_response.rb +130 -0
  186. data/lib/shell_card_management_ap_is/models/update_card_group_response_move_card_references_items.rb +77 -0
  187. data/lib/shell_card_management_ap_is/models/update_card_renewal_address.rb +163 -0
  188. data/lib/shell_card_management_ap_is/models/update_card_status_request.rb +124 -0
  189. data/lib/shell_card_management_ap_is/models/update_card_status_response.rb +133 -0
  190. data/lib/shell_card_management_ap_is/models/update_m_pay_reg_status_request.rb +112 -0
  191. data/lib/shell_card_management_ap_is/models/update_m_pay_reg_status_request_m_pay_requests_items.rb +105 -0
  192. data/lib/shell_card_management_ap_is/models/update_m_pay_reg_status_response.rb +60 -0
  193. data/lib/shell_card_management_ap_is/models/url_enum.rb +23 -0
  194. data/lib/shell_card_management_ap_is/models/usage_restrictions.rb +311 -0
  195. data/lib/shell_card_management_ap_is/utilities/date_time_helper.rb +11 -0
  196. data/lib/shell_card_management_ap_is/utilities/file_wrapper.rb +16 -0
  197. data/lib/shell_card_management_ap_is.rb +288 -0
  198. metadata +283 -0
@@ -0,0 +1,92 @@
1
+ # shell_card_management_ap_is
2
+ #
3
+ # This file was automatically generated by APIMATIC v2.0
4
+ # ( https://apimatic.io ).
5
+
6
+ module ShellCardManagementApIs
7
+ # AutoRenewCardResponse Model.
8
+ class AutoRenewCardResponse < BaseModel
9
+ SKIP = Object.new
10
+ private_constant :SKIP
11
+
12
+ # Main reference number for tracking.
13
+ # Example: 123455
14
+ # @return [Integer]
15
+ attr_accessor :main_reference
16
+
17
+ # API
18
+ # @return [String]
19
+ attr_accessor :request_id
20
+
21
+ # Indicates overall status of the request. Allowed values: SUCCES, FAILED,
22
+ # PARTIAL_SUCCESS
23
+ # @return [String]
24
+ attr_accessor :status
25
+
26
+ # List of Auto Renew reference entity. The fields of this entity are
27
+ # described below.
28
+ # @return [Array[AutoRenewCardResponseDataItems]]
29
+ attr_accessor :data
30
+
31
+ # A mapping from model property names to API property names.
32
+ def self.names
33
+ @_hash = {} if @_hash.nil?
34
+ @_hash['main_reference'] = 'MainReference'
35
+ @_hash['request_id'] = 'RequestId'
36
+ @_hash['status'] = 'Status'
37
+ @_hash['data'] = 'Data'
38
+ @_hash
39
+ end
40
+
41
+ # An array for optional fields
42
+ def self.optionals
43
+ %w[
44
+ main_reference
45
+ request_id
46
+ status
47
+ data
48
+ ]
49
+ end
50
+
51
+ # An array for nullable fields
52
+ def self.nullables
53
+ []
54
+ end
55
+
56
+ def initialize(main_reference = SKIP,
57
+ request_id = SKIP,
58
+ status = SKIP,
59
+ data = SKIP)
60
+ @main_reference = main_reference unless main_reference == SKIP
61
+ @request_id = request_id unless request_id == SKIP
62
+ @status = status unless status == SKIP
63
+ @data = data unless data == SKIP
64
+ end
65
+
66
+ # Creates an instance of the object from a hash.
67
+ def self.from_hash(hash)
68
+ return nil unless hash
69
+
70
+ # Extract variables from the hash.
71
+ main_reference = hash.key?('MainReference') ? hash['MainReference'] : SKIP
72
+ request_id = hash.key?('RequestId') ? hash['RequestId'] : SKIP
73
+ status = hash.key?('Status') ? hash['Status'] : SKIP
74
+ # Parameter is an array, so we need to iterate through it
75
+ data = nil
76
+ unless hash['Data'].nil?
77
+ data = []
78
+ hash['Data'].each do |structure|
79
+ data << (AutoRenewCardResponseDataItems.from_hash(structure) if structure)
80
+ end
81
+ end
82
+
83
+ data = SKIP unless hash.key?('Data')
84
+
85
+ # Create object from extracted values.
86
+ AutoRenewCardResponse.new(main_reference,
87
+ request_id,
88
+ status,
89
+ data)
90
+ end
91
+ end
92
+ end
@@ -0,0 +1,64 @@
1
+ # shell_card_management_ap_is
2
+ #
3
+ # This file was automatically generated by APIMATIC v2.0
4
+ # ( https://apimatic.io ).
5
+
6
+ module ShellCardManagementApIs
7
+ # AutoRenewCardResponseDataItems Model.
8
+ class AutoRenewCardResponseDataItems < BaseModel
9
+ SKIP = Object.new
10
+ private_constant :SKIP
11
+
12
+ # CardId and PAN of the card. ;( Semicolon is used as delimiter.
13
+ # @return [Integer]
14
+ attr_accessor :auto_renew_reference_id
15
+
16
+ # Reference number for each individual auto renew card in the order.
17
+ # @return [String]
18
+ attr_accessor :card_id_and_pan
19
+
20
+ # A mapping from model property names to API property names.
21
+ def self.names
22
+ @_hash = {} if @_hash.nil?
23
+ @_hash['auto_renew_reference_id'] = 'AutoRenewReferenceId'
24
+ @_hash['card_id_and_pan'] = 'CardIdAndPAN'
25
+ @_hash
26
+ end
27
+
28
+ # An array for optional fields
29
+ def self.optionals
30
+ %w[
31
+ auto_renew_reference_id
32
+ card_id_and_pan
33
+ ]
34
+ end
35
+
36
+ # An array for nullable fields
37
+ def self.nullables
38
+ %w[
39
+ auto_renew_reference_id
40
+ card_id_and_pan
41
+ ]
42
+ end
43
+
44
+ def initialize(auto_renew_reference_id = SKIP,
45
+ card_id_and_pan = SKIP)
46
+ @auto_renew_reference_id = auto_renew_reference_id unless auto_renew_reference_id == SKIP
47
+ @card_id_and_pan = card_id_and_pan unless card_id_and_pan == SKIP
48
+ end
49
+
50
+ # Creates an instance of the object from a hash.
51
+ def self.from_hash(hash)
52
+ return nil unless hash
53
+
54
+ # Extract variables from the hash.
55
+ auto_renew_reference_id =
56
+ hash.key?('AutoRenewReferenceId') ? hash['AutoRenewReferenceId'] : SKIP
57
+ card_id_and_pan = hash.key?('CardIdAndPAN') ? hash['CardIdAndPAN'] : SKIP
58
+
59
+ # Create object from extracted values.
60
+ AutoRenewCardResponseDataItems.new(auto_renew_reference_id,
61
+ card_id_and_pan)
62
+ end
63
+ end
64
+ end
@@ -0,0 +1,192 @@
1
+ # shell_card_management_ap_is
2
+ #
3
+ # This file was automatically generated by APIMATIC v2.0
4
+ # ( https://apimatic.io ).
5
+
6
+ module ShellCardManagementApIs
7
+ # BankAccount Model.
8
+ class BankAccount < BaseModel
9
+ SKIP = Object.new
10
+ private_constant :SKIP
11
+
12
+ # Account Number
13
+ # @return [String]
14
+ attr_accessor :account_number
15
+
16
+ # Bank Name
17
+ # @return [String]
18
+ attr_accessor :bank_name
19
+
20
+ # Account Name
21
+ # @return [String]
22
+ attr_accessor :account_name
23
+
24
+ # Bank Account effective date for the payer
25
+ # @return [String]
26
+ attr_accessor :date_effective
27
+
28
+ # Bank Account terminated date. Default is null
29
+ # @return [String]
30
+ attr_accessor :date_terminated
31
+
32
+ # Bank Account IBAN for Payer
33
+ # @return [String]
34
+ attr_accessor :iban
35
+
36
+ # Bank Account currency ISO code.
37
+ # @return [String]
38
+ attr_accessor :currency_code
39
+
40
+ # Bank Account currency Symbol.
41
+ # @return [String]
42
+ attr_accessor :currency_symbol
43
+
44
+ # Bank Account Country ISO Code
45
+ # @return [String]
46
+ attr_accessor :country_iso_code
47
+
48
+ # Bank Account Country Name
49
+ # 1-Austria
50
+ # 2-Belgium
51
+ # 3-Bulgaria
52
+ # 4-Croatia
53
+ # 5-Czech Republic
54
+ # @return [String]
55
+ attr_accessor :country
56
+
57
+ # Payer bank Sort Code
58
+ # @return [String]
59
+ attr_accessor :sort_code
60
+
61
+ # Payer Bank Swift Code
62
+ # @return [String]
63
+ attr_accessor :swift_code
64
+
65
+ # Bank Type Id and Description
66
+ # @return [String]
67
+ attr_accessor :bank_type
68
+
69
+ # A mapping from model property names to API property names.
70
+ def self.names
71
+ @_hash = {} if @_hash.nil?
72
+ @_hash['account_number'] = 'AccountNumber'
73
+ @_hash['bank_name'] = 'BankName'
74
+ @_hash['account_name'] = 'AccountName'
75
+ @_hash['date_effective'] = 'DateEffective'
76
+ @_hash['date_terminated'] = 'DateTerminated'
77
+ @_hash['iban'] = 'IBAN'
78
+ @_hash['currency_code'] = 'CurrencyCode'
79
+ @_hash['currency_symbol'] = 'CurrencySymbol'
80
+ @_hash['country_iso_code'] = 'CountryISOCode'
81
+ @_hash['country'] = 'Country'
82
+ @_hash['sort_code'] = 'SortCode'
83
+ @_hash['swift_code'] = 'SwiftCode'
84
+ @_hash['bank_type'] = 'BankType'
85
+ @_hash
86
+ end
87
+
88
+ # An array for optional fields
89
+ def self.optionals
90
+ %w[
91
+ account_number
92
+ bank_name
93
+ account_name
94
+ date_effective
95
+ date_terminated
96
+ iban
97
+ currency_code
98
+ currency_symbol
99
+ country_iso_code
100
+ country
101
+ sort_code
102
+ swift_code
103
+ bank_type
104
+ ]
105
+ end
106
+
107
+ # An array for nullable fields
108
+ def self.nullables
109
+ %w[
110
+ account_number
111
+ bank_name
112
+ account_name
113
+ date_effective
114
+ date_terminated
115
+ iban
116
+ currency_code
117
+ currency_symbol
118
+ country_iso_code
119
+ country
120
+ sort_code
121
+ swift_code
122
+ bank_type
123
+ ]
124
+ end
125
+
126
+ def initialize(account_number = SKIP,
127
+ bank_name = SKIP,
128
+ account_name = SKIP,
129
+ date_effective = SKIP,
130
+ date_terminated = SKIP,
131
+ iban = SKIP,
132
+ currency_code = SKIP,
133
+ currency_symbol = SKIP,
134
+ country_iso_code = SKIP,
135
+ country = SKIP,
136
+ sort_code = SKIP,
137
+ swift_code = SKIP,
138
+ bank_type = SKIP)
139
+ @account_number = account_number unless account_number == SKIP
140
+ @bank_name = bank_name unless bank_name == SKIP
141
+ @account_name = account_name unless account_name == SKIP
142
+ @date_effective = date_effective unless date_effective == SKIP
143
+ @date_terminated = date_terminated unless date_terminated == SKIP
144
+ @iban = iban unless iban == SKIP
145
+ @currency_code = currency_code unless currency_code == SKIP
146
+ @currency_symbol = currency_symbol unless currency_symbol == SKIP
147
+ @country_iso_code = country_iso_code unless country_iso_code == SKIP
148
+ @country = country unless country == SKIP
149
+ @sort_code = sort_code unless sort_code == SKIP
150
+ @swift_code = swift_code unless swift_code == SKIP
151
+ @bank_type = bank_type unless bank_type == SKIP
152
+ end
153
+
154
+ # Creates an instance of the object from a hash.
155
+ def self.from_hash(hash)
156
+ return nil unless hash
157
+
158
+ # Extract variables from the hash.
159
+ account_number = hash.key?('AccountNumber') ? hash['AccountNumber'] : SKIP
160
+ bank_name = hash.key?('BankName') ? hash['BankName'] : SKIP
161
+ account_name = hash.key?('AccountName') ? hash['AccountName'] : SKIP
162
+ date_effective = hash.key?('DateEffective') ? hash['DateEffective'] : SKIP
163
+ date_terminated =
164
+ hash.key?('DateTerminated') ? hash['DateTerminated'] : SKIP
165
+ iban = hash.key?('IBAN') ? hash['IBAN'] : SKIP
166
+ currency_code = hash.key?('CurrencyCode') ? hash['CurrencyCode'] : SKIP
167
+ currency_symbol =
168
+ hash.key?('CurrencySymbol') ? hash['CurrencySymbol'] : SKIP
169
+ country_iso_code =
170
+ hash.key?('CountryISOCode') ? hash['CountryISOCode'] : SKIP
171
+ country = hash.key?('Country') ? hash['Country'] : SKIP
172
+ sort_code = hash.key?('SortCode') ? hash['SortCode'] : SKIP
173
+ swift_code = hash.key?('SwiftCode') ? hash['SwiftCode'] : SKIP
174
+ bank_type = hash.key?('BankType') ? hash['BankType'] : SKIP
175
+
176
+ # Create object from extracted values.
177
+ BankAccount.new(account_number,
178
+ bank_name,
179
+ account_name,
180
+ date_effective,
181
+ date_terminated,
182
+ iban,
183
+ currency_code,
184
+ currency_symbol,
185
+ country_iso_code,
186
+ country,
187
+ sort_code,
188
+ swift_code,
189
+ bank_type)
190
+ end
191
+ end
192
+ end
@@ -0,0 +1,62 @@
1
+ # shell_card_management_ap_is
2
+ #
3
+ # This file was automatically generated by APIMATIC v2.0
4
+ # ( https://apimatic.io ).
5
+
6
+ module ShellCardManagementApIs
7
+ # Base model.
8
+ class BaseModel < CoreLibrary::BaseModel
9
+ # Returns a Hash representation of the current object.
10
+ def to_hash
11
+ # validating the model being serialized
12
+ self.class.validate(self) if self.class.respond_to?(:validate)
13
+
14
+ hash = {}
15
+ instance_variables.each do |name|
16
+ value = instance_variable_get(name)
17
+ name = name[1..]
18
+ key = self.class.names.key?(name) ? self.class.names[name] : name
19
+ optional_fields = self.class.optionals
20
+ nullable_fields = self.class.nullables
21
+ if value.nil?
22
+ next unless nullable_fields.include?(name)
23
+
24
+ if !optional_fields.include?(name) && !nullable_fields.include?(name)
25
+ raise ArgumentError,
26
+ "`#{name}` cannot be nil in `#{self.class}`. Please specify a valid value."
27
+ end
28
+ end
29
+
30
+ hash[key] = nil
31
+ unless value.nil?
32
+ if respond_to?("to_custom_#{name}")
33
+ if (value.instance_of? Array) || (value.instance_of? Hash)
34
+ params = [hash, key]
35
+ hash[key] = send("to_custom_#{name}", *params)
36
+ else
37
+ hash[key] = send("to_custom_#{name}")
38
+ end
39
+ elsif respond_to?("to_union_type_#{name}")
40
+ hash[key] = send("to_union_type_#{name}")
41
+ elsif value.instance_of? Array
42
+ hash[key] = value.map { |v| v.is_a?(BaseModel) ? v.to_hash : v }
43
+ elsif value.instance_of? Hash
44
+ hash[key] = {}
45
+ value.each do |k, v|
46
+ hash[key][k] = v.is_a?(BaseModel) ? v.to_hash : v
47
+ end
48
+ else
49
+ hash[key] = value.is_a?(BaseModel) ? value.to_hash : value
50
+ end
51
+ end
52
+ end
53
+ hash
54
+ end
55
+
56
+ # Returns a JSON representation of the curent object.
57
+ def to_json(options = {})
58
+ hash = to_hash
59
+ hash.to_json(options)
60
+ end
61
+ end
62
+ end
@@ -0,0 +1,166 @@
1
+ # shell_card_management_ap_is
2
+ #
3
+ # This file was automatically generated by APIMATIC v2.0
4
+ # ( https://apimatic.io ).
5
+
6
+ module ShellCardManagementApIs
7
+ # BundleRestriction Model.
8
+ class BundleRestriction < BaseModel
9
+ SKIP = Object.new
10
+ private_constant :SKIP
11
+
12
+ # True/False
13
+ # A value indicates if the day/time restriction is to be reset for card
14
+ # bundle.
15
+ # Optional
16
+ # Default value is False.
17
+ # @return [TrueClass | FalseClass]
18
+ attr_accessor :reset_day_time_restriction
19
+
20
+ # True/False
21
+ # A value indicates if the location restriction is to be reset for card
22
+ # bundle.
23
+ # Optional
24
+ # Default value is False.
25
+ # @return [TrueClass | FalseClass]
26
+ attr_accessor :reset_location_restriction
27
+
28
+ # True/False
29
+ # A value indicates if the product restriction is to be reset for card
30
+ # bundle.
31
+ # Optional
32
+ # Default value is False.
33
+ # @return [TrueClass | FalseClass]
34
+ attr_accessor :reset_product_restriction
35
+
36
+ # True/False
37
+ # A value indicates if the product restriction is to be reset for card
38
+ # bundle.
39
+ # Optional
40
+ # Default value is False.
41
+ # @return [UsageRestrictions]
42
+ attr_accessor :usage_restrictions
43
+
44
+ # Day/time restrictions such as weekdays and time range to be applied on the
45
+ # bundle.
46
+ # Mandatory if respective action is set as “Add”.
47
+ # The details of DayTimeRestriction entity is given below.
48
+ # @return [DayTimeRestrictions]
49
+ attr_accessor :day_time_restrictions
50
+
51
+ # Day/time restrictions such as weekdays and time range to be applied on the
52
+ # bundle.
53
+ # Mandatory if respective action is set as “Add”.
54
+ # The details of DayTimeRestriction entity is given below.
55
+ # @return [ProductRestrictions]
56
+ attr_accessor :product_restriction
57
+
58
+ # Identifier of the location restriction profile to be updated for the
59
+ # bundle in Gateway.
60
+ # Optional
61
+ # @return [String]
62
+ attr_accessor :location_restriction_profile_id
63
+
64
+ # Location restrictions to be applied on the bundle which either allows or
65
+ # restricts using the cards, which are under the bundle, in the specified
66
+ # locations.
67
+ # Mandatory if respective action is set as “Add”.
68
+ # Details of location restrictions are given below.
69
+ # @return [LocationRestrictions]
70
+ attr_accessor :location_restrictions
71
+
72
+ # A mapping from model property names to API property names.
73
+ def self.names
74
+ @_hash = {} if @_hash.nil?
75
+ @_hash['reset_day_time_restriction'] = 'ResetDayTimeRestriction'
76
+ @_hash['reset_location_restriction'] = 'ResetLocationRestriction'
77
+ @_hash['reset_product_restriction'] = 'ResetProductRestriction'
78
+ @_hash['usage_restrictions'] = 'UsageRestrictions'
79
+ @_hash['day_time_restrictions'] = 'DayTimeRestrictions'
80
+ @_hash['product_restriction'] = 'ProductRestriction'
81
+ @_hash['location_restriction_profile_id'] =
82
+ 'LocationRestrictionProfileId'
83
+ @_hash['location_restrictions'] = 'LocationRestrictions'
84
+ @_hash
85
+ end
86
+
87
+ # An array for optional fields
88
+ def self.optionals
89
+ %w[
90
+ reset_day_time_restriction
91
+ reset_location_restriction
92
+ reset_product_restriction
93
+ usage_restrictions
94
+ day_time_restrictions
95
+ product_restriction
96
+ location_restriction_profile_id
97
+ location_restrictions
98
+ ]
99
+ end
100
+
101
+ # An array for nullable fields
102
+ def self.nullables
103
+ []
104
+ end
105
+
106
+ def initialize(reset_day_time_restriction = false,
107
+ reset_location_restriction = false,
108
+ reset_product_restriction = false,
109
+ usage_restrictions = SKIP,
110
+ day_time_restrictions = SKIP,
111
+ product_restriction = SKIP,
112
+ location_restriction_profile_id = SKIP,
113
+ location_restrictions = SKIP)
114
+ unless reset_day_time_restriction == SKIP
115
+ @reset_day_time_restriction =
116
+ reset_day_time_restriction
117
+ end
118
+ unless reset_location_restriction == SKIP
119
+ @reset_location_restriction =
120
+ reset_location_restriction
121
+ end
122
+ unless reset_product_restriction == SKIP
123
+ @reset_product_restriction =
124
+ reset_product_restriction
125
+ end
126
+ @usage_restrictions = usage_restrictions unless usage_restrictions == SKIP
127
+ @day_time_restrictions = day_time_restrictions unless day_time_restrictions == SKIP
128
+ @product_restriction = product_restriction unless product_restriction == SKIP
129
+ unless location_restriction_profile_id == SKIP
130
+ @location_restriction_profile_id =
131
+ location_restriction_profile_id
132
+ end
133
+ @location_restrictions = location_restrictions unless location_restrictions == SKIP
134
+ end
135
+
136
+ # Creates an instance of the object from a hash.
137
+ def self.from_hash(hash)
138
+ return nil unless hash
139
+
140
+ # Extract variables from the hash.
141
+ reset_day_time_restriction = hash['ResetDayTimeRestriction'] ||= false
142
+ reset_location_restriction = hash['ResetLocationRestriction'] ||= false
143
+ reset_product_restriction = hash['ResetProductRestriction'] ||= false
144
+ usage_restrictions = UsageRestrictions.from_hash(hash['UsageRestrictions']) if
145
+ hash['UsageRestrictions']
146
+ day_time_restrictions = DayTimeRestrictions.from_hash(hash['DayTimeRestrictions']) if
147
+ hash['DayTimeRestrictions']
148
+ product_restriction = ProductRestrictions.from_hash(hash['ProductRestriction']) if
149
+ hash['ProductRestriction']
150
+ location_restriction_profile_id =
151
+ hash.key?('LocationRestrictionProfileId') ? hash['LocationRestrictionProfileId'] : SKIP
152
+ location_restrictions = LocationRestrictions.from_hash(hash['LocationRestrictions']) if
153
+ hash['LocationRestrictions']
154
+
155
+ # Create object from extracted values.
156
+ BundleRestriction.new(reset_day_time_restriction,
157
+ reset_location_restriction,
158
+ reset_product_restriction,
159
+ usage_restrictions,
160
+ day_time_restrictions,
161
+ product_restriction,
162
+ location_restriction_profile_id,
163
+ location_restrictions)
164
+ end
165
+ end
166
+ end
@@ -0,0 +1,107 @@
1
+ # shell_card_management_ap_is
2
+ #
3
+ # This file was automatically generated by APIMATIC v2.0
4
+ # ( https://apimatic.io ).
5
+
6
+ module ShellCardManagementApIs
7
+ # This entity models the data that is sent in the http request body of this
8
+ # operation.
9
+ class CancelCardRequest < BaseModel
10
+ SKIP = Object.new
11
+ private_constant :SKIP
12
+
13
+ # List of CancelCardRequest entity.
14
+ # Each card in the list will be Cancelled.
15
+ # The details of the entity are given below.
16
+ # @return [Array[UpdateCard]]
17
+ attr_accessor :cards
18
+
19
+ # Reason id for cancelling the card.<br />
20
+ # Optional if ReasonText is passed, else mandatory<br />
21
+ # When passed, the reason Id will be validated with the allowed reason id’s
22
+ # configured for the card type of the card.<br />
23
+ # If the reason Id is not allowed, then it will be included on the error
24
+ # cards response.
25
+ # Possible values:
26
+ # 1 (Lost)
27
+ # 2 (Stolen)
28
+ # 3 (Card no longer required)
29
+ # @return [Integer]
30
+ attr_accessor :reason_id
31
+
32
+ # Reason text for cancelling the card.<br />
33
+ # Optional if ReasonId is passed, else mandatory<br />
34
+ # When Reason Id is not known to the client, the reason text can be
35
+ # passed.<br />
36
+ # When Reason Text is passed and the Target Status is either Block or
37
+ # Damaged, the text will be validated with the allowed list of values
38
+ # configured for the card type of the card.
39
+ # If the text is not allowed, then it will be included on the error cards
40
+ # response.
41
+ # However, if the Target status is Temporary block or Unblock then the text
42
+ # will be submitted
43
+ # Possible Values:
44
+ # 1) Lost
45
+ # 2) Stolen
46
+ # 3) Card no longer required
47
+ # @return [String]
48
+ attr_accessor :reason_text
49
+
50
+ # A mapping from model property names to API property names.
51
+ def self.names
52
+ @_hash = {} if @_hash.nil?
53
+ @_hash['cards'] = 'Cards'
54
+ @_hash['reason_id'] = 'ReasonId'
55
+ @_hash['reason_text'] = 'ReasonText'
56
+ @_hash
57
+ end
58
+
59
+ # An array for optional fields
60
+ def self.optionals
61
+ %w[
62
+ reason_id
63
+ reason_text
64
+ ]
65
+ end
66
+
67
+ # An array for nullable fields
68
+ def self.nullables
69
+ %w[
70
+ reason_id
71
+ reason_text
72
+ ]
73
+ end
74
+
75
+ def initialize(cards = nil,
76
+ reason_id = SKIP,
77
+ reason_text = SKIP)
78
+ @cards = cards
79
+ @reason_id = reason_id unless reason_id == SKIP
80
+ @reason_text = reason_text unless reason_text == SKIP
81
+ end
82
+
83
+ # Creates an instance of the object from a hash.
84
+ def self.from_hash(hash)
85
+ return nil unless hash
86
+
87
+ # Extract variables from the hash.
88
+ # Parameter is an array, so we need to iterate through it
89
+ cards = nil
90
+ unless hash['Cards'].nil?
91
+ cards = []
92
+ hash['Cards'].each do |structure|
93
+ cards << (UpdateCard.from_hash(structure) if structure)
94
+ end
95
+ end
96
+
97
+ cards = nil unless hash.key?('Cards')
98
+ reason_id = hash.key?('ReasonId') ? hash['ReasonId'] : SKIP
99
+ reason_text = hash.key?('ReasonText') ? hash['ReasonText'] : SKIP
100
+
101
+ # Create object from extracted values.
102
+ CancelCardRequest.new(cards,
103
+ reason_id,
104
+ reason_text)
105
+ end
106
+ end
107
+ end