fortis-python-sdk 1.0.0__py3-none-any.whl

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 (699) hide show
  1. fortis_python_sdk-1.0.0.dist-info/METADATA +183 -0
  2. fortis_python_sdk-1.0.0.dist-info/RECORD +699 -0
  3. fortis_python_sdk-1.0.0.dist-info/WHEEL +5 -0
  4. fortis_python_sdk-1.0.0.dist-info/licenses/LICENSE +28 -0
  5. fortis_python_sdk-1.0.0.dist-info/top_level.txt +1 -0
  6. fortisapi/__init__.py +12 -0
  7. fortisapi/api_helper.py +19 -0
  8. fortisapi/configuration.py +294 -0
  9. fortisapi/controllers/__init__.py +40 -0
  10. fortisapi/controllers/apple_pay_validate_merchant_controller.py +84 -0
  11. fortisapi/controllers/async_processing_controller.py +78 -0
  12. fortisapi/controllers/base_controller.py +67 -0
  13. fortisapi/controllers/batches_controller.py +179 -0
  14. fortisapi/controllers/calculate_surcharge_controller.py +76 -0
  15. fortisapi/controllers/contacts_controller.py +398 -0
  16. fortisapi/controllers/declined_recurring_transactions_controller.py +326 -0
  17. fortisapi/controllers/device_terms_controller.py +242 -0
  18. fortisapi/controllers/elements_controller.py +129 -0
  19. fortisapi/controllers/enterprise_link_redirect_controller.py +81 -0
  20. fortisapi/controllers/full_boarding_controller.py +85 -0
  21. fortisapi/controllers/level_3_data_controller.py +219 -0
  22. fortisapi/controllers/locations_controller.py +478 -0
  23. fortisapi/controllers/m_3_ds_authentication_controller.py +90 -0
  24. fortisapi/controllers/m_3_ds_transactions_controller.py +84 -0
  25. fortisapi/controllers/merchant_deposits_controller.py +295 -0
  26. fortisapi/controllers/merchant_details_controller.py +82 -0
  27. fortisapi/controllers/on_boarding_controller.py +100 -0
  28. fortisapi/controllers/paylinks_controller.py +396 -0
  29. fortisapi/controllers/payment_card_reader_token_controller.py +76 -0
  30. fortisapi/controllers/quick_invoices_controller.py +531 -0
  31. fortisapi/controllers/recurring_controller.py +545 -0
  32. fortisapi/controllers/reports_controller.py +209 -0
  33. fortisapi/controllers/signatures_controller.py +249 -0
  34. fortisapi/controllers/tags_controller.py +328 -0
  35. fortisapi/controllers/terminals_controller.py +304 -0
  36. fortisapi/controllers/tickets_controller.py +249 -0
  37. fortisapi/controllers/tokens_controller.py +679 -0
  38. fortisapi/controllers/transaction_ach_retries_controller.py +250 -0
  39. fortisapi/controllers/transactions_ach_controller.py +398 -0
  40. fortisapi/controllers/transactions_cash_controller.py +123 -0
  41. fortisapi/controllers/transactions_credit_card_controller.py +1796 -0
  42. fortisapi/controllers/transactions_ebt_card_controller.py +147 -0
  43. fortisapi/controllers/transactions_read_controller.py +248 -0
  44. fortisapi/controllers/transactions_updates_controller.py +435 -0
  45. fortisapi/controllers/webhooks_controller.py +493 -0
  46. fortisapi/exceptions/__init__.py +8 -0
  47. fortisapi/exceptions/api_exception.py +36 -0
  48. fortisapi/exceptions/response_401_token_exception.py +77 -0
  49. fortisapi/exceptions/response_412_exception.py +109 -0
  50. fortisapi/exceptions/response_error_exception.py +109 -0
  51. fortisapi/fortisapi_client.py +360 -0
  52. fortisapi/http/__init__.py +11 -0
  53. fortisapi/http/auth/__init__.py +8 -0
  54. fortisapi/http/auth/access_token.py +100 -0
  55. fortisapi/http/auth/developer_id.py +100 -0
  56. fortisapi/http/auth/user_api_key.py +100 -0
  57. fortisapi/http/auth/user_id.py +100 -0
  58. fortisapi/http/http_call_back.py +20 -0
  59. fortisapi/http/http_client_provider.py +23 -0
  60. fortisapi/http/http_method_enum.py +25 -0
  61. fortisapi/http/http_request.py +55 -0
  62. fortisapi/http/http_response.py +45 -0
  63. fortisapi/http/proxy_settings.py +50 -0
  64. fortisapi/models/__init__.py +636 -0
  65. fortisapi/models/account_info.py +519 -0
  66. fortisapi/models/account_type_12_enum.py +47 -0
  67. fortisapi/models/account_type_13_enum.py +51 -0
  68. fortisapi/models/account_type_16_enum.py +51 -0
  69. fortisapi/models/account_type_enum.py +83 -0
  70. fortisapi/models/account_vault.py +1408 -0
  71. fortisapi/models/account_vault_cau_log.py +201 -0
  72. fortisapi/models/account_vault_cau_product_transaction.py +754 -0
  73. fortisapi/models/ach_product_transaction.py +3048 -0
  74. fortisapi/models/ach_sec_code_1_enum.py +59 -0
  75. fortisapi/models/ach_sec_code_31_enum.py +61 -0
  76. fortisapi/models/ach_sec_code_3_enum.py +59 -0
  77. fortisapi/models/ach_sec_code_enum.py +67 -0
  78. fortisapi/models/acs_challenge_mandated_enum.py +52 -0
  79. fortisapi/models/action_enum.py +70 -0
  80. fortisapi/models/active_recurring.py +975 -0
  81. fortisapi/models/additional_access.py +102 -0
  82. fortisapi/models/additional_amount.py +201 -0
  83. fortisapi/models/addon.py +222 -0
  84. fortisapi/models/addon_transaction_type_enum.py +57 -0
  85. fortisapi/models/address.py +205 -0
  86. fortisapi/models/address_1.py +228 -0
  87. fortisapi/models/address_2.py +204 -0
  88. fortisapi/models/address_71.py +186 -0
  89. fortisapi/models/address_match_enum.py +54 -0
  90. fortisapi/models/address_type_enum.py +50 -0
  91. fortisapi/models/all_tag.py +194 -0
  92. fortisapi/models/alt_bank_account.py +180 -0
  93. fortisapi/models/amount_ind_enum.py +121 -0
  94. fortisapi/models/app_delivery_enum.py +50 -0
  95. fortisapi/models/auth_currency_enum.py +168 -0
  96. fortisapi/models/avs_enum.py +56 -0
  97. fortisapi/models/balance.py +154 -0
  98. fortisapi/models/bank_account.py +156 -0
  99. fortisapi/models/bank_account_1.py +186 -0
  100. fortisapi/models/batch_risk_config.py +132 -0
  101. fortisapi/models/billing_address.py +233 -0
  102. fortisapi/models/billing_address_1.py +258 -0
  103. fortisapi/models/billing_address_24.py +263 -0
  104. fortisapi/models/billing_address_5.py +155 -0
  105. fortisapi/models/body.py +134 -0
  106. fortisapi/models/branding_domain.py +867 -0
  107. fortisapi/models/branding_domain_1.py +867 -0
  108. fortisapi/models/broad_info.py +241 -0
  109. fortisapi/models/browser_information.py +401 -0
  110. fortisapi/models/business_category_enum.py +77 -0
  111. fortisapi/models/business_type_enum.py +365 -0
  112. fortisapi/models/cardholder.py +324 -0
  113. fortisapi/models/cardholder_account.py +211 -0
  114. fortisapi/models/category_enum.py +133 -0
  115. fortisapi/models/cau_subscribe_type_code_enum.py +50 -0
  116. fortisapi/models/cau_subscribe_type_id_enum.py +50 -0
  117. fortisapi/models/cau_summary_status_id_enum.py +53 -0
  118. fortisapi/models/cc_product_transaction.py +3048 -0
  119. fortisapi/models/ch_acc_age_ind_enum.py +66 -0
  120. fortisapi/models/ch_acc_change_ind_enum.py +63 -0
  121. fortisapi/models/ch_acc_pw_change_ind_enum.py +67 -0
  122. fortisapi/models/challenge_message_extension.py +177 -0
  123. fortisapi/models/challenge_window_size_enum.py +73 -0
  124. fortisapi/models/changelog.py +280 -0
  125. fortisapi/models/changelog_detail.py +178 -0
  126. fortisapi/models/children.py +822 -0
  127. fortisapi/models/communication_type_enum.py +50 -0
  128. fortisapi/models/conditions.py +125 -0
  129. fortisapi/models/conditions_18.py +146 -0
  130. fortisapi/models/conditions_181.py +146 -0
  131. fortisapi/models/conditions_191.py +146 -0
  132. fortisapi/models/conditions_27.py +125 -0
  133. fortisapi/models/conditions_4.py +146 -0
  134. fortisapi/models/conditions_41.py +146 -0
  135. fortisapi/models/conditions_42.py +146 -0
  136. fortisapi/models/conditions_43.py +146 -0
  137. fortisapi/models/contact.py +179 -0
  138. fortisapi/models/contact_1.py +822 -0
  139. fortisapi/models/contact_9.py +169 -0
  140. fortisapi/models/contact_user_default_entry_page_enum.py +59 -0
  141. fortisapi/models/context.py +125 -0
  142. fortisapi/models/country_enum.py +47 -0
  143. fortisapi/models/created_user.py +1197 -0
  144. fortisapi/models/currency_code_enum.py +186 -0
  145. fortisapi/models/currency_type.py +131 -0
  146. fortisapi/models/data.py +225 -0
  147. fortisapi/models/data_1.py +105 -0
  148. fortisapi/models/data_10.py +1283 -0
  149. fortisapi/models/data_11.py +948 -0
  150. fortisapi/models/data_12.py +369 -0
  151. fortisapi/models/data_13.py +263 -0
  152. fortisapi/models/data_14.py +552 -0
  153. fortisapi/models/data_15.py +102 -0
  154. fortisapi/models/data_16.py +930 -0
  155. fortisapi/models/data_17.py +920 -0
  156. fortisapi/models/data_18.py +102 -0
  157. fortisapi/models/data_19.py +631 -0
  158. fortisapi/models/data_2.py +1134 -0
  159. fortisapi/models/data_20.py +1657 -0
  160. fortisapi/models/data_21.py +223 -0
  161. fortisapi/models/data_22.py +1341 -0
  162. fortisapi/models/data_23.py +245 -0
  163. fortisapi/models/data_24.py +219 -0
  164. fortisapi/models/data_25.py +1456 -0
  165. fortisapi/models/data_26.py +376 -0
  166. fortisapi/models/data_27.py +1681 -0
  167. fortisapi/models/data_28.py +380 -0
  168. fortisapi/models/data_29.py +4233 -0
  169. fortisapi/models/data_3.py +296 -0
  170. fortisapi/models/data_30.py +421 -0
  171. fortisapi/models/data_31.py +150 -0
  172. fortisapi/models/data_34.py +103 -0
  173. fortisapi/models/data_35.py +259 -0
  174. fortisapi/models/data_36.py +537 -0
  175. fortisapi/models/data_4.py +482 -0
  176. fortisapi/models/data_5.py +171 -0
  177. fortisapi/models/data_6.py +469 -0
  178. fortisapi/models/data_7.py +230 -0
  179. fortisapi/models/data_8.py +616 -0
  180. fortisapi/models/data_9.py +129 -0
  181. fortisapi/models/debit_credit_enum.py +48 -0
  182. fortisapi/models/declined_recurring_notification.py +251 -0
  183. fortisapi/models/default_transaction_type_enum.py +50 -0
  184. fortisapi/models/delivery_method_enum.py +61 -0
  185. fortisapi/models/delivery_timeframe_enum.py +61 -0
  186. fortisapi/models/deposit_type_enum.py +50 -0
  187. fortisapi/models/detail.py +173 -0
  188. fortisapi/models/detail_1.py +323 -0
  189. fortisapi/models/detail_2.py +273 -0
  190. fortisapi/models/developer_company.py +270 -0
  191. fortisapi/models/device.py +123 -0
  192. fortisapi/models/device_binding_status_enum.py +373 -0
  193. fortisapi/models/device_channel_enum.py +51 -0
  194. fortisapi/models/document.py +115 -0
  195. fortisapi/models/e_format_enum.py +62 -0
  196. fortisapi/models/ebt_plan_enum.py +50 -0
  197. fortisapi/models/ebt_type_enum.py +61 -0
  198. fortisapi/models/email_blacklist.py +178 -0
  199. fortisapi/models/email_enum.py +47 -0
  200. fortisapi/models/emv_receipt_data.py +244 -0
  201. fortisapi/models/entry_mode_id_enum.py +73 -0
  202. fortisapi/models/expand_108_enum.py +48 -0
  203. fortisapi/models/expand_10_enum.py +42 -0
  204. fortisapi/models/expand_11_enum.py +99 -0
  205. fortisapi/models/expand_15_enum.py +42 -0
  206. fortisapi/models/expand_17_enum.py +96 -0
  207. fortisapi/models/expand_18_enum.py +84 -0
  208. fortisapi/models/expand_1_enum.py +75 -0
  209. fortisapi/models/expand_26_enum.py +87 -0
  210. fortisapi/models/expand_34_enum.py +42 -0
  211. fortisapi/models/expand_37_enum.py +42 -0
  212. fortisapi/models/expand_40_enum.py +63 -0
  213. fortisapi/models/expand_44_enum.py +48 -0
  214. fortisapi/models/expand_47_enum.py +69 -0
  215. fortisapi/models/expand_57_enum.py +54 -0
  216. fortisapi/models/expand_5_enum.py +48 -0
  217. fortisapi/models/expand_60_enum.py +171 -0
  218. fortisapi/models/expand_8_enum.py +57 -0
  219. fortisapi/models/expand_enum.py +51 -0
  220. fortisapi/models/field.py +125 -0
  221. fortisapi/models/field_20.py +267 -0
  222. fortisapi/models/field_27_enum.py +129 -0
  223. fortisapi/models/field_28_enum.py +168 -0
  224. fortisapi/models/field_30_enum.py +75 -0
  225. fortisapi/models/field_31_enum.py +87 -0
  226. fortisapi/models/field_33_enum.py +183 -0
  227. fortisapi/models/field_34_enum.py +195 -0
  228. fortisapi/models/field_35_enum.py +180 -0
  229. fortisapi/models/field_36_enum.py +192 -0
  230. fortisapi/models/field_37_enum.py +102 -0
  231. fortisapi/models/field_39_enum.py +186 -0
  232. fortisapi/models/field_41_enum.py +237 -0
  233. fortisapi/models/field_43_enum.py +198 -0
  234. fortisapi/models/field_45_enum.py +78 -0
  235. fortisapi/models/field_46_enum.py +126 -0
  236. fortisapi/models/field_47_enum.py +60 -0
  237. fortisapi/models/field_49_enum.py +57 -0
  238. fortisapi/models/field_51_enum.py +210 -0
  239. fortisapi/models/field_53_enum.py +84 -0
  240. fortisapi/models/field_55_enum.py +231 -0
  241. fortisapi/models/field_57_enum.py +75 -0
  242. fortisapi/models/field_59_enum.py +510 -0
  243. fortisapi/models/field_configuration.py +202 -0
  244. fortisapi/models/file.py +412 -0
  245. fortisapi/models/file_2.py +125 -0
  246. fortisapi/models/file_5.py +130 -0
  247. fortisapi/models/filter_by.py +171 -0
  248. fortisapi/models/footer.py +134 -0
  249. fortisapi/models/forecast.py +250 -0
  250. fortisapi/models/format_1_enum.py +47 -0
  251. fortisapi/models/format_enum.py +47 -0
  252. fortisapi/models/header.py +134 -0
  253. fortisapi/models/helppage.py +270 -0
  254. fortisapi/models/home_phone.py +130 -0
  255. fortisapi/models/hosted_payment_page.py +558 -0
  256. fortisapi/models/identity_verification.py +183 -0
  257. fortisapi/models/identity_verification_2.py +183 -0
  258. fortisapi/models/identity_verification_27.py +165 -0
  259. fortisapi/models/idtype_enum.py +47 -0
  260. fortisapi/models/iias_ind_enum.py +64 -0
  261. fortisapi/models/industry_type_enum.py +59 -0
  262. fortisapi/models/initiation_type_enum.py +92 -0
  263. fortisapi/models/interval_type_enum.py +50 -0
  264. fortisapi/models/item_list.py +125 -0
  265. fortisapi/models/item_list_4.py +99 -0
  266. fortisapi/models/item_list_5.py +130 -0
  267. fortisapi/models/joi.py +104 -0
  268. fortisapi/models/joi_18.py +111 -0
  269. fortisapi/models/joi_19.py +111 -0
  270. fortisapi/models/joi_27.py +104 -0
  271. fortisapi/models/joi_4.py +110 -0
  272. fortisapi/models/kyc_response_object.py +101 -0
  273. fortisapi/models/level_3_data.py +481 -0
  274. fortisapi/models/level_3_data_5.py +324 -0
  275. fortisapi/models/level_3_data_6.py +469 -0
  276. fortisapi/models/level_3_default.py +481 -0
  277. fortisapi/models/line_item.py +450 -0
  278. fortisapi/models/line_item_13.py +449 -0
  279. fortisapi/models/line_item_19.py +360 -0
  280. fortisapi/models/line_item_20.py +273 -0
  281. fortisapi/models/links.py +196 -0
  282. fortisapi/models/list.py +650 -0
  283. fortisapi/models/list_1.py +1134 -0
  284. fortisapi/models/list_10.py +1657 -0
  285. fortisapi/models/list_11.py +1341 -0
  286. fortisapi/models/list_12.py +336 -0
  287. fortisapi/models/list_13.py +731 -0
  288. fortisapi/models/list_14.py +245 -0
  289. fortisapi/models/list_15.py +219 -0
  290. fortisapi/models/list_16.py +1456 -0
  291. fortisapi/models/list_17.py +376 -0
  292. fortisapi/models/list_18.py +1681 -0
  293. fortisapi/models/list_19.py +380 -0
  294. fortisapi/models/list_20.py +4233 -0
  295. fortisapi/models/list_3.py +296 -0
  296. fortisapi/models/list_4.py +469 -0
  297. fortisapi/models/list_5.py +948 -0
  298. fortisapi/models/list_6.py +1283 -0
  299. fortisapi/models/list_8.py +552 -0
  300. fortisapi/models/list_9.py +920 -0
  301. fortisapi/models/location.py +756 -0
  302. fortisapi/models/location_18.py +217 -0
  303. fortisapi/models/location_5.py +227 -0
  304. fortisapi/models/location_billing_account.py +509 -0
  305. fortisapi/models/location_type_26_enum.py +51 -0
  306. fortisapi/models/location_type_enum.py +50 -0
  307. fortisapi/models/locationmarketplace.py +247 -0
  308. fortisapi/models/log_email.py +364 -0
  309. fortisapi/models/log_sms.py +315 -0
  310. fortisapi/models/marketplace.py +247 -0
  311. fortisapi/models/masync.py +128 -0
  312. fortisapi/models/merchant_list.py +193 -0
  313. fortisapi/models/merchant_risk_indicator.py +341 -0
  314. fortisapi/models/message_category_enum.py +119 -0
  315. fortisapi/models/message_extension.py +177 -0
  316. fortisapi/models/meta.py +107 -0
  317. fortisapi/models/method_3.py +147 -0
  318. fortisapi/models/method_50.py +145 -0
  319. fortisapi/models/method_53_enum.py +56 -0
  320. fortisapi/models/method_5_enum.py +56 -0
  321. fortisapi/models/method_enum.py +56 -0
  322. fortisapi/models/mobile_phone.py +130 -0
  323. fortisapi/models/modified_user.py +1197 -0
  324. fortisapi/models/multi_transaction.py +147 -0
  325. fortisapi/models/operator_1_enum.py +59 -0
  326. fortisapi/models/operator_enum.py +47 -0
  327. fortisapi/models/order_21.py +99 -0
  328. fortisapi/models/order_enum.py +47 -0
  329. fortisapi/models/owner.py +322 -0
  330. fortisapi/models/ownership_type_enum.py +71 -0
  331. fortisapi/models/page.py +132 -0
  332. fortisapi/models/pagination.py +196 -0
  333. fortisapi/models/parent.py +822 -0
  334. fortisapi/models/parent_3.py +756 -0
  335. fortisapi/models/partner_enum.py +71 -0
  336. fortisapi/models/paylink_action_enum.py +47 -0
  337. fortisapi/models/payment_acc_ind_enum.py +67 -0
  338. fortisapi/models/payment_method_16_enum.py +47 -0
  339. fortisapi/models/payment_method_1_enum.py +47 -0
  340. fortisapi/models/payment_method_9_enum.py +50 -0
  341. fortisapi/models/payment_method_enum.py +50 -0
  342. fortisapi/models/payment_recurring_notification.py +251 -0
  343. fortisapi/models/payment_type_priority_enum.py +47 -0
  344. fortisapi/models/postback_log.py +295 -0
  345. fortisapi/models/postback_status_id_enum.py +53 -0
  346. fortisapi/models/pre_order_purchase_ind_enum.py +52 -0
  347. fortisapi/models/preferred_language_enum.py +51 -0
  348. fortisapi/models/preferred_protocol_version_enum.py +65 -0
  349. fortisapi/models/pricing_element.py +147 -0
  350. fortisapi/models/primary_principal.py +396 -0
  351. fortisapi/models/primary_principal_1.py +376 -0
  352. fortisapi/models/process_method_enum.py +47 -0
  353. fortisapi/models/processor_enum.py +59 -0
  354. fortisapi/models/product_accountvault.py +317 -0
  355. fortisapi/models/product_file.py +416 -0
  356. fortisapi/models/product_file_1.py +414 -0
  357. fortisapi/models/product_invoice.py +651 -0
  358. fortisapi/models/product_recurring.py +387 -0
  359. fortisapi/models/product_token.py +317 -0
  360. fortisapi/models/product_transaction.py +3048 -0
  361. fortisapi/models/product_transaction_1.py +3046 -0
  362. fortisapi/models/purchase.py +501 -0
  363. fortisapi/models/quick_invoice.py +1256 -0
  364. fortisapi/models/quick_invoice_setting.py +299 -0
  365. fortisapi/models/quick_invoice_view.py +176 -0
  366. fortisapi/models/reason_code.py +131 -0
  367. fortisapi/models/reason_code_id_1_enum.py +935 -0
  368. fortisapi/models/reason_code_id_enum.py +578 -0
  369. fortisapi/models/reason_model_enum.py +74 -0
  370. fortisapi/models/received_email.py +364 -0
  371. fortisapi/models/recipients_enum.py +62 -0
  372. fortisapi/models/recurring.py +975 -0
  373. fortisapi/models/recurring_3.py +977 -0
  374. fortisapi/models/recurring_flag_enum.py +64 -0
  375. fortisapi/models/recurring_split.py +200 -0
  376. fortisapi/models/recurring_type_id_enum.py +47 -0
  377. fortisapi/models/registration_field_enum.py +87 -0
  378. fortisapi/models/rejected_transaction.py +3198 -0
  379. fortisapi/models/rejected_transaction_ach_retry.py +244 -0
  380. fortisapi/models/relationship_enum.py +50 -0
  381. fortisapi/models/reorder_items_ind_enum.py +51 -0
  382. fortisapi/models/report_export_type_enum.py +53 -0
  383. fortisapi/models/resource_12_enum.py +52 -0
  384. fortisapi/models/resource_2_enum.py +50 -0
  385. fortisapi/models/resource_enum.py +55 -0
  386. fortisapi/models/response_416_date_range.py +148 -0
  387. fortisapi/models/response_417_filter_channels.py +148 -0
  388. fortisapi/models/response_apple_pay_validate_merchant.py +126 -0
  389. fortisapi/models/response_async_status.py +126 -0
  390. fortisapi/models/response_batchs_collection.py +228 -0
  391. fortisapi/models/response_calculate_surcharge.py +126 -0
  392. fortisapi/models/response_contact.py +126 -0
  393. fortisapi/models/response_contact_searchs_collection.py +228 -0
  394. fortisapi/models/response_contacts_collection.py +228 -0
  395. fortisapi/models/response_declined_recurring_transaction.py +126 -0
  396. fortisapi/models/response_declined_recurring_transaction_payment.py +126 -0
  397. fortisapi/models/response_declined_recurring_transaction_resend.py +126 -0
  398. fortisapi/models/response_declined_recurring_transactions_collection.py +228 -0
  399. fortisapi/models/response_device_term.py +126 -0
  400. fortisapi/models/response_device_terms_collection.py +228 -0
  401. fortisapi/models/response_fullboarding.py +126 -0
  402. fortisapi/models/response_location.py +126 -0
  403. fortisapi/models/response_location_info.py +126 -0
  404. fortisapi/models/response_location_infos_collection.py +228 -0
  405. fortisapi/models/response_location_searchs_collection.py +228 -0
  406. fortisapi/models/response_locations_collection.py +228 -0
  407. fortisapi/models/response_merchant.py +126 -0
  408. fortisapi/models/response_merchant_deposit.py +126 -0
  409. fortisapi/models/response_merchant_deposits_collection.py +228 -0
  410. fortisapi/models/response_merchant_details.py +126 -0
  411. fortisapi/models/response_onboarding.py +126 -0
  412. fortisapi/models/response_paylink.py +126 -0
  413. fortisapi/models/response_paylinks_collection.py +228 -0
  414. fortisapi/models/response_payment_card_reader_token.py +126 -0
  415. fortisapi/models/response_quick_invoice.py +126 -0
  416. fortisapi/models/response_quick_invoice_resend.py +126 -0
  417. fortisapi/models/response_quick_invoices_collection.py +228 -0
  418. fortisapi/models/response_recurring.py +126 -0
  419. fortisapi/models/response_recurrings_collection.py +228 -0
  420. fortisapi/models/response_reporting_reports_cc_settled_transactions_collection.py +231 -0
  421. fortisapi/models/response_reporting_reports_chargebacks_collection.py +228 -0
  422. fortisapi/models/response_signature.py +126 -0
  423. fortisapi/models/response_signatures_collection.py +228 -0
  424. fortisapi/models/response_tag.py +126 -0
  425. fortisapi/models/response_tags_collection.py +228 -0
  426. fortisapi/models/response_terminal.py +126 -0
  427. fortisapi/models/response_terminals_collection.py +228 -0
  428. fortisapi/models/response_three_ds_authentication.py +126 -0
  429. fortisapi/models/response_three_ds_transaction.py +126 -0
  430. fortisapi/models/response_ticket.py +126 -0
  431. fortisapi/models/response_ticket_intention.py +126 -0
  432. fortisapi/models/response_tickets_collection.py +228 -0
  433. fortisapi/models/response_token.py +126 -0
  434. fortisapi/models/response_tokens_collection.py +228 -0
  435. fortisapi/models/response_transaction.py +126 -0
  436. fortisapi/models/response_transaction_ach_retry.py +126 -0
  437. fortisapi/models/response_transaction_ach_retrys_collection.py +228 -0
  438. fortisapi/models/response_transaction_bin_info.py +126 -0
  439. fortisapi/models/response_transaction_intention.py +126 -0
  440. fortisapi/models/response_transaction_level_3.py +126 -0
  441. fortisapi/models/response_transaction_level_3_master.py +126 -0
  442. fortisapi/models/response_transaction_level_3_visa.py +126 -0
  443. fortisapi/models/response_transaction_processing.py +126 -0
  444. fortisapi/models/response_transactions_collection.py +228 -0
  445. fortisapi/models/response_webhook.py +126 -0
  446. fortisapi/models/result.py +152 -0
  447. fortisapi/models/retry_transaction.py +3198 -0
  448. fortisapi/models/retry_transaction_ach_retry.py +246 -0
  449. fortisapi/models/return_fee_transaction.py +3198 -0
  450. fortisapi/models/return_fee_transaction_ach_retry.py +246 -0
  451. fortisapi/models/saved_account.py +1408 -0
  452. fortisapi/models/scheme_id_enum.py +54 -0
  453. fortisapi/models/sec_code_enum.py +51 -0
  454. fortisapi/models/settings.py +148 -0
  455. fortisapi/models/settled_currency_enum.py +168 -0
  456. fortisapi/models/severity_enum.py +62 -0
  457. fortisapi/models/ship_address_usage_ind_enum.py +62 -0
  458. fortisapi/models/ship_indicator_enum.py +101 -0
  459. fortisapi/models/ship_name_indicator_enum.py +52 -0
  460. fortisapi/models/shipping_address.py +264 -0
  461. fortisapi/models/signature.py +220 -0
  462. fortisapi/models/sms_blacklist.py +178 -0
  463. fortisapi/models/sms_enum.py +47 -0
  464. fortisapi/models/sort.py +132 -0
  465. fortisapi/models/source_enum.py +56 -0
  466. fortisapi/models/stack_enum.py +47 -0
  467. fortisapi/models/status_11.py +131 -0
  468. fortisapi/models/status_3_enum.py +47 -0
  469. fortisapi/models/status_5.py +102 -0
  470. fortisapi/models/status_code_12_enum.py +47 -0
  471. fortisapi/models/status_code_17_enum.py +102 -0
  472. fortisapi/models/status_code_enum.py +50 -0
  473. fortisapi/models/status_enum.py +50 -0
  474. fortisapi/models/status_id_enum.py +47 -0
  475. fortisapi/models/surcharge.py +574 -0
  476. fortisapi/models/surcharge_transaction.py +367 -0
  477. fortisapi/models/suspicious_acc_activity_enum.py +52 -0
  478. fortisapi/models/tag.py +194 -0
  479. fortisapi/models/tag_transaction.py +319 -0
  480. fortisapi/models/tax_exempt_enum.py +61 -0
  481. fortisapi/models/tax_surcharge_config_enum.py +47 -0
  482. fortisapi/models/terminal.py +1245 -0
  483. fortisapi/models/terminal_2.py +1243 -0
  484. fortisapi/models/terminal_application.py +411 -0
  485. fortisapi/models/terminal_cvm.py +293 -0
  486. fortisapi/models/terminal_manufacturer.py +249 -0
  487. fortisapi/models/terminal_manufacturer_code_enum.py +55 -0
  488. fortisapi/models/terminal_router.py +245 -0
  489. fortisapi/models/terminal_timeouts.py +304 -0
  490. fortisapi/models/terminal_timeouts_12.py +314 -0
  491. fortisapi/models/three_ds_req_auth_method_enum.py +154 -0
  492. fortisapi/models/three_ds_req_prior_auth_method_enum.py +123 -0
  493. fortisapi/models/three_ds_requestor.py +345 -0
  494. fortisapi/models/three_ds_requestor_authentication_ind_enum.py +141 -0
  495. fortisapi/models/three_ds_requestor_authentication_info.py +179 -0
  496. fortisapi/models/three_ds_requestor_challenge_ind_enum.py +126 -0
  497. fortisapi/models/three_ds_requestor_dec_req_ind_enum.py +72 -0
  498. fortisapi/models/three_ds_requestor_prior_authentication_info.py +188 -0
  499. fortisapi/models/three_ds_requestor_spc_support_enum.py +49 -0
  500. fortisapi/models/three_ri_ind_enum.py +180 -0
  501. fortisapi/models/tip_percents.py +160 -0
  502. fortisapi/models/trans_char_enum.py +45 -0
  503. fortisapi/models/transaction.py +3196 -0
  504. fortisapi/models/transaction_batch.py +537 -0
  505. fortisapi/models/transaction_batch_settlement.py +202 -0
  506. fortisapi/models/transaction_history.py +246 -0
  507. fortisapi/models/transaction_level_3.py +152 -0
  508. fortisapi/models/transaction_reference.py +298 -0
  509. fortisapi/models/transaction_split.py +221 -0
  510. fortisapi/models/transaction_status_enum.py +88 -0
  511. fortisapi/models/transaction_type_enum.py +68 -0
  512. fortisapi/models/trx_source_code_enum.py +155 -0
  513. fortisapi/models/trx_source_id_enum.py +155 -0
  514. fortisapi/models/type_103_enum.py +44 -0
  515. fortisapi/models/type_105_enum.py +44 -0
  516. fortisapi/models/type_10_enum.py +44 -0
  517. fortisapi/models/type_110_enum.py +44 -0
  518. fortisapi/models/type_114_enum.py +44 -0
  519. fortisapi/models/type_11_enum.py +44 -0
  520. fortisapi/models/type_121_enum.py +44 -0
  521. fortisapi/models/type_123.py +131 -0
  522. fortisapi/models/type_124_enum.py +44 -0
  523. fortisapi/models/type_125_enum.py +44 -0
  524. fortisapi/models/type_126_enum.py +44 -0
  525. fortisapi/models/type_127_enum.py +44 -0
  526. fortisapi/models/type_128_enum.py +44 -0
  527. fortisapi/models/type_134_enum.py +44 -0
  528. fortisapi/models/type_135_enum.py +44 -0
  529. fortisapi/models/type_136_enum.py +44 -0
  530. fortisapi/models/type_15_enum.py +44 -0
  531. fortisapi/models/type_16_enum.py +44 -0
  532. fortisapi/models/type_1_enum.py +44 -0
  533. fortisapi/models/type_20_enum.py +44 -0
  534. fortisapi/models/type_21_enum.py +44 -0
  535. fortisapi/models/type_22_enum.py +44 -0
  536. fortisapi/models/type_23_enum.py +44 -0
  537. fortisapi/models/type_27_enum.py +44 -0
  538. fortisapi/models/type_28_enum.py +44 -0
  539. fortisapi/models/type_29_enum.py +64 -0
  540. fortisapi/models/type_2_enum.py +44 -0
  541. fortisapi/models/type_30_enum.py +44 -0
  542. fortisapi/models/type_31_enum.py +44 -0
  543. fortisapi/models/type_35_enum.py +44 -0
  544. fortisapi/models/type_39_enum.py +44 -0
  545. fortisapi/models/type_3_enum.py +44 -0
  546. fortisapi/models/type_43_enum.py +44 -0
  547. fortisapi/models/type_44_enum.py +44 -0
  548. fortisapi/models/type_45_enum.py +44 -0
  549. fortisapi/models/type_46_enum.py +44 -0
  550. fortisapi/models/type_47_enum.py +44 -0
  551. fortisapi/models/type_48_enum.py +44 -0
  552. fortisapi/models/type_4_enum.py +44 -0
  553. fortisapi/models/type_52_enum.py +44 -0
  554. fortisapi/models/type_53_enum.py +44 -0
  555. fortisapi/models/type_54_enum.py +44 -0
  556. fortisapi/models/type_55_enum.py +44 -0
  557. fortisapi/models/type_59_enum.py +44 -0
  558. fortisapi/models/type_5_enum.py +44 -0
  559. fortisapi/models/type_60_enum.py +44 -0
  560. fortisapi/models/type_61_enum.py +45 -0
  561. fortisapi/models/type_62_enum.py +44 -0
  562. fortisapi/models/type_63_enum.py +91 -0
  563. fortisapi/models/type_64_enum.py +44 -0
  564. fortisapi/models/type_65_enum.py +44 -0
  565. fortisapi/models/type_6_enum.py +44 -0
  566. fortisapi/models/type_70_enum.py +44 -0
  567. fortisapi/models/type_71_enum.py +44 -0
  568. fortisapi/models/type_75_enum.py +44 -0
  569. fortisapi/models/type_79_enum.py +44 -0
  570. fortisapi/models/type_83_enum.py +44 -0
  571. fortisapi/models/type_84_enum.py +44 -0
  572. fortisapi/models/type_88_enum.py +44 -0
  573. fortisapi/models/type_89_enum.py +44 -0
  574. fortisapi/models/type_93_enum.py +44 -0
  575. fortisapi/models/type_94_enum.py +44 -0
  576. fortisapi/models/type_98_enum.py +44 -0
  577. fortisapi/models/type_99_enum.py +44 -0
  578. fortisapi/models/type_enum.py +44 -0
  579. fortisapi/models/type_id_enum.py +59 -0
  580. fortisapi/models/ui_prefs.py +204 -0
  581. fortisapi/models/update_if_exists_enum.py +44 -0
  582. fortisapi/models/user.py +180 -0
  583. fortisapi/models/user_1.py +1197 -0
  584. fortisapi/models/user_9.py +1195 -0
  585. fortisapi/models/user_type_code_enum.py +74 -0
  586. fortisapi/models/v_1_contacts_request.py +685 -0
  587. fortisapi/models/v_1_contacts_request_1.py +707 -0
  588. fortisapi/models/v_1_declined_recurring_transaction_payments_request.py +354 -0
  589. fortisapi/models/v_1_device_terms_request.py +161 -0
  590. fortisapi/models/v_1_elements_ticket_intention_request.py +195 -0
  591. fortisapi/models/v_1_elements_transaction_intention_request.py +591 -0
  592. fortisapi/models/v_1_fullboarding_request.py +827 -0
  593. fortisapi/models/v_1_merchant_threedsecure_authentication_request.py +696 -0
  594. fortisapi/models/v_1_onboarding_request.py +833 -0
  595. fortisapi/models/v_1_paylinks_request.py +723 -0
  596. fortisapi/models/v_1_paylinks_request_1.py +735 -0
  597. fortisapi/models/v_1_public_calculate_surcharge_request.py +527 -0
  598. fortisapi/models/v_1_quick_invoices_request.py +1035 -0
  599. fortisapi/models/v_1_quick_invoices_request_1.py +1070 -0
  600. fortisapi/models/v_1_quick_invoices_transaction_request.py +86 -0
  601. fortisapi/models/v_1_recurrings_defer_payment_request.py +86 -0
  602. fortisapi/models/v_1_recurrings_request.py +742 -0
  603. fortisapi/models/v_1_recurrings_request_1.py +750 -0
  604. fortisapi/models/v_1_recurrings_skip_payment_request.py +86 -0
  605. fortisapi/models/v_1_signatures_request.py +113 -0
  606. fortisapi/models/v_1_tags_request.py +99 -0
  607. fortisapi/models/v_1_tags_request_1.py +130 -0
  608. fortisapi/models/v_1_terminals_request.py +1005 -0
  609. fortisapi/models/v_1_terminals_request_1.py +1112 -0
  610. fortisapi/models/v_1_tickets_request.py +286 -0
  611. fortisapi/models/v_1_tokens_ach_request.py +945 -0
  612. fortisapi/models/v_1_tokens_ach_request_1.py +907 -0
  613. fortisapi/models/v_1_tokens_cc_request.py +1071 -0
  614. fortisapi/models/v_1_tokens_cc_request_1.py +905 -0
  615. fortisapi/models/v_1_tokens_previous_transaction_request.py +858 -0
  616. fortisapi/models/v_1_tokens_terminal_async_request.py +889 -0
  617. fortisapi/models/v_1_tokens_terminal_request.py +889 -0
  618. fortisapi/models/v_1_tokens_ticket_request.py +882 -0
  619. fortisapi/models/v_1_tokens_wallet_request.py +919 -0
  620. fortisapi/models/v_1_transaction_ach_retries_request.py +119 -0
  621. fortisapi/models/v_1_transactions_ach_credit_keyed_request.py +1600 -0
  622. fortisapi/models/v_1_transactions_ach_credit_prev_trxn_request.py +1616 -0
  623. fortisapi/models/v_1_transactions_ach_credit_token_request.py +1660 -0
  624. fortisapi/models/v_1_transactions_ach_debit_keyed_request.py +1600 -0
  625. fortisapi/models/v_1_transactions_ach_debit_prev_trxn_request.py +1616 -0
  626. fortisapi/models/v_1_transactions_ach_debit_token_request.py +1660 -0
  627. fortisapi/models/v_1_transactions_ach_refund_prev_trxn_request.py +1616 -0
  628. fortisapi/models/v_1_transactions_auth_complete_request.py +1519 -0
  629. fortisapi/models/v_1_transactions_auth_increment_request.py +1533 -0
  630. fortisapi/models/v_1_transactions_cash_refund_request.py +1515 -0
  631. fortisapi/models/v_1_transactions_cash_sale_request.py +1489 -0
  632. fortisapi/models/v_1_transactions_cc_auth_only_keyed_request.py +2164 -0
  633. fortisapi/models/v_1_transactions_cc_auth_only_prev_trxn_request.py +2124 -0
  634. fortisapi/models/v_1_transactions_cc_auth_only_taptopay_request.py +1843 -0
  635. fortisapi/models/v_1_transactions_cc_auth_only_terminal_request.py +2082 -0
  636. fortisapi/models/v_1_transactions_cc_auth_only_ticket_request.py +2050 -0
  637. fortisapi/models/v_1_transactions_cc_auth_only_token_request.py +2129 -0
  638. fortisapi/models/v_1_transactions_cc_auth_only_wallet_request.py +2062 -0
  639. fortisapi/models/v_1_transactions_cc_avs_only_keyed_request.py +2175 -0
  640. fortisapi/models/v_1_transactions_cc_avs_only_prev_trxn_request.py +2124 -0
  641. fortisapi/models/v_1_transactions_cc_avs_only_swiped_request.py +2086 -0
  642. fortisapi/models/v_1_transactions_cc_avs_only_terminal_request.py +2093 -0
  643. fortisapi/models/v_1_transactions_cc_avs_only_ticket_request.py +2061 -0
  644. fortisapi/models/v_1_transactions_cc_avs_only_token_request.py +2140 -0
  645. fortisapi/models/v_1_transactions_cc_avs_only_wallet_request.py +2073 -0
  646. fortisapi/models/v_1_transactions_cc_balance_inquiry_keyed_request.py +2176 -0
  647. fortisapi/models/v_1_transactions_cc_balance_inquiry_prev_trxn_request.py +2125 -0
  648. fortisapi/models/v_1_transactions_cc_balance_inquiry_swiped_request.py +2087 -0
  649. fortisapi/models/v_1_transactions_cc_balance_inquiry_terminal_request.py +2094 -0
  650. fortisapi/models/v_1_transactions_cc_balance_inquiry_ticket_request.py +2062 -0
  651. fortisapi/models/v_1_transactions_cc_balance_inquiry_token_request.py +2141 -0
  652. fortisapi/models/v_1_transactions_cc_balance_inquiry_wallet_request.py +2074 -0
  653. fortisapi/models/v_1_transactions_cc_refund_keyed_request.py +2218 -0
  654. fortisapi/models/v_1_transactions_cc_refund_prev_trxn_request.py +2124 -0
  655. fortisapi/models/v_1_transactions_cc_refund_taptopay_request.py +1869 -0
  656. fortisapi/models/v_1_transactions_cc_refund_terminal_request.py +2082 -0
  657. fortisapi/models/v_1_transactions_cc_refund_ticket_request.py +2050 -0
  658. fortisapi/models/v_1_transactions_cc_refund_token_request.py +2129 -0
  659. fortisapi/models/v_1_transactions_cc_refund_wallet_request.py +2062 -0
  660. fortisapi/models/v_1_transactions_cc_sale_keyed_request.py +2164 -0
  661. fortisapi/models/v_1_transactions_cc_sale_prev_trxn_request.py +2124 -0
  662. fortisapi/models/v_1_transactions_cc_sale_taptopay_request.py +1843 -0
  663. fortisapi/models/v_1_transactions_cc_sale_terminal_request.py +2082 -0
  664. fortisapi/models/v_1_transactions_cc_sale_ticket_request.py +2050 -0
  665. fortisapi/models/v_1_transactions_cc_sale_token_request.py +2129 -0
  666. fortisapi/models/v_1_transactions_cc_sale_wallet_request.py +2062 -0
  667. fortisapi/models/v_1_transactions_ebt_voucher_clear_refund_keyed_request.py +2190 -0
  668. fortisapi/models/v_1_transactions_ebt_voucher_clear_sale_keyed_request.py +2190 -0
  669. fortisapi/models/v_1_transactions_level_3_master_card_request.py +91 -0
  670. fortisapi/models/v_1_transactions_level_3_visa_request.py +91 -0
  671. fortisapi/models/v_1_transactions_partial_reversal_request.py +1462 -0
  672. fortisapi/models/v_1_transactions_refund_request.py +1448 -0
  673. fortisapi/models/v_1_transactions_tip_adjust_request.py +1973 -0
  674. fortisapi/models/v_1_transactions_void_request.py +130 -0
  675. fortisapi/models/v_1_wallet_provider_apple_pay_validate_merchant_request.py +127 -0
  676. fortisapi/models/v_1_wallet_provider_merchant_details_request.py +87 -0
  677. fortisapi/models/v_1_webhooks_apm_onboarding_request.py +421 -0
  678. fortisapi/models/v_1_webhooks_apm_onboarding_request_1.py +494 -0
  679. fortisapi/models/v_1_webhooks_batch_request.py +410 -0
  680. fortisapi/models/v_1_webhooks_batch_request_1.py +494 -0
  681. fortisapi/models/v_1_webhooks_contact_request.py +421 -0
  682. fortisapi/models/v_1_webhooks_contact_request_1.py +494 -0
  683. fortisapi/models/v_1_webhooks_transaction_request.py +410 -0
  684. fortisapi/models/v_1_webhooks_transaction_request_1.py +494 -0
  685. fortisapi/models/values_4_enum.py +59 -0
  686. fortisapi/models/values_50_enum.py +59 -0
  687. fortisapi/models/values_51_enum.py +62 -0
  688. fortisapi/models/values_58_enum.py +59 -0
  689. fortisapi/models/values_5_enum.py +59 -0
  690. fortisapi/models/values_6_enum.py +59 -0
  691. fortisapi/models/values_7_enum.py +59 -0
  692. fortisapi/models/values_99_enum.py +45 -0
  693. fortisapi/models/values_enum.py +51 -0
  694. fortisapi/models/wallet_provider_enum.py +47 -0
  695. fortisapi/models/wallet_type_enum.py +86 -0
  696. fortisapi/models/work_phone.py +130 -0
  697. fortisapi/utilities/__init__.py +6 -0
  698. fortisapi/utilities/file_wrapper.py +45 -0
  699. fortisapi/utilities/union_type_lookup.py +436 -0
@@ -0,0 +1,328 @@
1
+ """fortisapi.
2
+
3
+ This file was automatically generated by APIMATIC v3.0 ( https://www.apimatic.io ).
4
+ """
5
+
6
+ # ruff: noqa: D410, E501, E101, D206
7
+ from apimatic_core.authentication.multiple.and_auth_group import (
8
+ And,
9
+ )
10
+ from apimatic_core.authentication.multiple.single_auth import (
11
+ Single,
12
+ )
13
+ from apimatic_core.request_builder import RequestBuilder
14
+ from apimatic_core.response_handler import ResponseHandler
15
+ from apimatic_core.types.parameter import Parameter
16
+
17
+ from fortisapi.api_helper import APIHelper
18
+ from fortisapi.configuration import Server
19
+ from fortisapi.controllers.base_controller import (
20
+ BaseController,
21
+ )
22
+ from fortisapi.exceptions.response_401_token_exception import (
23
+ Response401tokenException,
24
+ )
25
+ from fortisapi.exceptions.response_412_exception import (
26
+ Response412Exception,
27
+ )
28
+ from fortisapi.http.http_method_enum import (
29
+ HttpMethodEnum,
30
+ )
31
+ from fortisapi.models.response_tag import ResponseTag
32
+ from fortisapi.models.response_tags_collection import (
33
+ ResponseTagsCollection,
34
+ )
35
+
36
+
37
+ class TagsController(BaseController):
38
+ """A Controller to access Endpoints in the fortisapi API."""
39
+
40
+ def __init__(self, config):
41
+ """Initialize TagsController object."""
42
+ super(TagsController, self).__init__(config)
43
+
44
+ def create_a_new_tag(self,
45
+ body,
46
+ expand=None):
47
+ """Perform a POST request to /v1/tags.
48
+
49
+ Args:
50
+ body (V1TagsRequest): The request body parameter.
51
+ expand (List[Expand37Enum], optional): Most endpoints in the API have a
52
+ way to retrieve extra data related to the current record being
53
+ retrieved. For example, if the API request is for the accountvaults
54
+ endpoint, and the end user also needs to know which contact the token
55
+ belongs to, this data can be returned in the accountvaults endpoint
56
+ request.
57
+
58
+ Returns:
59
+ ResponseTag: Response from the API. Created
60
+
61
+ Raises:
62
+ APIException: When an error occurs while fetching the data from the
63
+ remote API. This exception includes the HTTP Response code, an error
64
+ message, and the HTTP body that was received in the request.
65
+
66
+ """
67
+ return super().new_api_call_builder.request(
68
+ RequestBuilder().server(Server.DEFAULT)
69
+ .path("/v1/tags")
70
+ .http_method(HttpMethodEnum.POST)
71
+ .header_param(Parameter()
72
+ .key("Content-Type")
73
+ .value("application/json"))
74
+ .body_param(Parameter()
75
+ .value(body))
76
+ .query_param(Parameter()
77
+ .key("expand")
78
+ .value(expand))
79
+ .header_param(Parameter()
80
+ .key("accept")
81
+ .value("application/json"))
82
+ .body_serializer(APIHelper.json_serialize)
83
+ .auth(And(Single("user-id"), Single("user-api-key"),
84
+ Single("developer-id"))),
85
+ ).response(
86
+ ResponseHandler()
87
+ .deserializer(APIHelper.json_deserialize)
88
+ .deserialize_into(ResponseTag.from_dictionary)
89
+ .local_error("401", "Unauthorized", Response401tokenException)
90
+ .local_error("412", "Precondition Failed", Response412Exception),
91
+ ).execute()
92
+
93
+ def list_all_tags_related(self,
94
+ page=None,
95
+ order=None,
96
+ filter_by=None,
97
+ expand=None,
98
+ format=None,
99
+ typeahead=None,
100
+ fields=None,
101
+ export_refunds_negative=None):
102
+ """Perform a GET request to /v1/tags.
103
+
104
+ Args:
105
+ page (Page, optional): Use this field to specify paginate your results,
106
+ by using page size and number. You can use one of the following
107
+ methods: >/endpoint?page={ "number": 1, "size": 50 } >
108
+ >/endpoint?page[number]=1&page[size]=50 >
109
+ order (List[Order21], optional): Criteria used in query string parameters
110
+ to order results. Most fields from the endpoint results can be used
111
+ as a `key`. Unsupported fields or operators will return a `412`.
112
+ Must be encoded, or use syntax that does not require encoding.
113
+ >/endpoint?order[0][key]=created_ts&order[0][operator]=asc >
114
+ >/endpoint?order=[{ "key": "created_ts", "operator": "asc"}] >
115
+ >/endpoint?order=[{ "key": "balance", "operator": "desc"},{ "key":
116
+ "created_ts", "operator": "asc"}] >
117
+ filter_by (List[FilterBy], optional): Filter criteria that can be used in
118
+ query string parameters. Most fields from the endpoint results can
119
+ be used as a `key`. Unsupported fields or operators will return a
120
+ `412`. Must be encoded, or use syntax that does not require encoding.
121
+ >?filter_by[0][key]=first_name&filter_by[0][operator]==&filter_by[0][v
122
+ alue]=Steve > >/endpoint?filter_by=[{ "key": "first_name",
123
+ "operator": "=", "value": "Fred" }] > >/endpoint?filter_by=[{ "key":
124
+ "account_type", "operator": "=", "value": "VISA" }] >
125
+ >/endpoint?filter_by=[{ "key": "created_ts", "operator": ">=",
126
+ "value": "946702799" }, { "key": "created_ts", "operator": "<=",
127
+ value: "1695061891" }] > >/endpoint?filter_by=[{ "key": "last_name",
128
+ "operator": "IN", "value": "Williams,Brown,Allman" }] >
129
+ expand (List[Expand37Enum], optional): Most endpoints in the API have a
130
+ way to retrieve extra data related to the current record being
131
+ retrieved. For example, if the API request is for the accountvaults
132
+ endpoint, and the end user also needs to know which contact the token
133
+ belongs to, this data can be returned in the accountvaults endpoint
134
+ request.
135
+ format (Format1Enum, optional): Reporting format, valid values: csv, tsv
136
+ typeahead (str, optional): You can use any `field_name` from this
137
+ endpoint results to order the list using the value provided as filter
138
+ for the same `field_name`. It will be ordered using the following
139
+ rules: 1) Exact match, 2) Starts with, 3) Contains.
140
+ >/endpoint?filter={ "field_name": "Value" }&_typeahead=field_name >
141
+ fields (List[Field49Enum], optional): You can use any `field_name` from
142
+ this endpoint results to filter the list of fields returned on the
143
+ response.
144
+ export_refunds_negative (bool, optional): When true, converts refund
145
+ amounts to negative values for export formats
146
+
147
+ Returns:
148
+ ResponseTagsCollection: Response from the API. OK
149
+
150
+ Raises:
151
+ APIException: When an error occurs while fetching the data from the
152
+ remote API. This exception includes the HTTP Response code, an error
153
+ message, and the HTTP body that was received in the request.
154
+
155
+ """
156
+ return super().new_api_call_builder.request(
157
+ RequestBuilder().server(Server.DEFAULT)
158
+ .path("/v1/tags")
159
+ .http_method(HttpMethodEnum.GET)
160
+ .query_param(Parameter()
161
+ .key("page")
162
+ .value(page))
163
+ .query_param(Parameter()
164
+ .key("order")
165
+ .value(order))
166
+ .query_param(Parameter()
167
+ .key("filter_by")
168
+ .value(filter_by))
169
+ .query_param(Parameter()
170
+ .key("expand")
171
+ .value(expand))
172
+ .query_param(Parameter()
173
+ .key("_format")
174
+ .value(format))
175
+ .query_param(Parameter()
176
+ .key("_typeahead")
177
+ .value(typeahead))
178
+ .query_param(Parameter()
179
+ .key("fields")
180
+ .value(fields))
181
+ .query_param(Parameter()
182
+ .key("export_refunds_negative")
183
+ .value(export_refunds_negative))
184
+ .header_param(Parameter()
185
+ .key("accept")
186
+ .value("application/json"))
187
+ .auth(And(Single("user-id"), Single("user-api-key"),
188
+ Single("developer-id"))),
189
+ ).response(
190
+ ResponseHandler()
191
+ .deserializer(APIHelper.json_deserialize)
192
+ .deserialize_into(ResponseTagsCollection.from_dictionary)
193
+ .local_error("401", "Unauthorized", Response401tokenException),
194
+ ).execute()
195
+
196
+ def delete_tag_record(self,
197
+ tag_id):
198
+ """Perform a DELETE request to /v1/tags/{tag_id}.
199
+
200
+ Args:
201
+ tag_id (str): Tag ID
202
+
203
+ Returns:
204
+ ResponseTag: Response from the API. No Content
205
+
206
+ Raises:
207
+ APIException: When an error occurs while fetching the data from the
208
+ remote API. This exception includes the HTTP Response code, an error
209
+ message, and the HTTP body that was received in the request.
210
+
211
+ """
212
+ return super().new_api_call_builder.request(
213
+ RequestBuilder().server(Server.DEFAULT)
214
+ .path("/v1/tags/{tag_id}")
215
+ .http_method(HttpMethodEnum.DELETE)
216
+ .template_param(Parameter()
217
+ .key("tag_id")
218
+ .value(tag_id)
219
+ .should_encode(True))
220
+ .header_param(Parameter()
221
+ .key("accept")
222
+ .value("application/json"))
223
+ .auth(And(Single("user-id"), Single("user-api-key"),
224
+ Single("developer-id"))),
225
+ ).response(
226
+ ResponseHandler()
227
+ .deserializer(APIHelper.json_deserialize)
228
+ .deserialize_into(ResponseTag.from_dictionary)
229
+ .local_error("401", "Unauthorized", Response401tokenException),
230
+ ).execute()
231
+
232
+ def view_single_tags_record(self,
233
+ tag_id,
234
+ expand=None,
235
+ fields=None):
236
+ """Perform a GET request to /v1/tags/{tag_id}.
237
+
238
+ Args:
239
+ tag_id (str): Tag ID
240
+ expand (List[Expand37Enum], optional): Most endpoints in the API have a
241
+ way to retrieve extra data related to the current record being
242
+ retrieved. For example, if the API request is for the accountvaults
243
+ endpoint, and the end user also needs to know which contact the token
244
+ belongs to, this data can be returned in the accountvaults endpoint
245
+ request.
246
+ fields (List[Field49Enum], optional): You can use any `field_name` from
247
+ this endpoint results to filter the list of fields returned on the
248
+ response.
249
+
250
+ Returns:
251
+ ResponseTag: Response from the API. OK
252
+
253
+ Raises:
254
+ APIException: When an error occurs while fetching the data from the
255
+ remote API. This exception includes the HTTP Response code, an error
256
+ message, and the HTTP body that was received in the request.
257
+
258
+ """
259
+ return super().new_api_call_builder.request(
260
+ RequestBuilder().server(Server.DEFAULT)
261
+ .path("/v1/tags/{tag_id}")
262
+ .http_method(HttpMethodEnum.GET)
263
+ .template_param(Parameter()
264
+ .key("tag_id")
265
+ .value(tag_id)
266
+ .should_encode(True))
267
+ .query_param(Parameter()
268
+ .key("expand")
269
+ .value(expand))
270
+ .query_param(Parameter()
271
+ .key("fields")
272
+ .value(fields))
273
+ .header_param(Parameter()
274
+ .key("accept")
275
+ .value("application/json"))
276
+ .auth(And(Single("user-id"), Single("user-api-key"),
277
+ Single("developer-id"))),
278
+ ).response(
279
+ ResponseHandler()
280
+ .deserializer(APIHelper.json_deserialize)
281
+ .deserialize_into(ResponseTag.from_dictionary)
282
+ .local_error("401", "Unauthorized", Response401tokenException),
283
+ ).execute()
284
+
285
+ def update_tag_record(self,
286
+ tag_id,
287
+ body):
288
+ """Perform a PATCH request to /v1/tags/{tag_id}.
289
+
290
+ Args:
291
+ tag_id (str): Tag ID
292
+ body (V1TagsRequest1): The request body parameter.
293
+
294
+ Returns:
295
+ ResponseTag: Response from the API. OK
296
+
297
+ Raises:
298
+ APIException: When an error occurs while fetching the data from the
299
+ remote API. This exception includes the HTTP Response code, an error
300
+ message, and the HTTP body that was received in the request.
301
+
302
+ """
303
+ return super().new_api_call_builder.request(
304
+ RequestBuilder().server(Server.DEFAULT)
305
+ .path("/v1/tags/{tag_id}")
306
+ .http_method(HttpMethodEnum.PATCH)
307
+ .template_param(Parameter()
308
+ .key("tag_id")
309
+ .value(tag_id)
310
+ .should_encode(True))
311
+ .header_param(Parameter()
312
+ .key("Content-Type")
313
+ .value("application/json"))
314
+ .body_param(Parameter()
315
+ .value(body))
316
+ .header_param(Parameter()
317
+ .key("accept")
318
+ .value("application/json"))
319
+ .body_serializer(APIHelper.json_serialize)
320
+ .auth(And(Single("user-id"), Single("user-api-key"),
321
+ Single("developer-id"))),
322
+ ).response(
323
+ ResponseHandler()
324
+ .deserializer(APIHelper.json_deserialize)
325
+ .deserialize_into(ResponseTag.from_dictionary)
326
+ .local_error("401", "Unauthorized", Response401tokenException)
327
+ .local_error("412", "Precondition Failed", Response412Exception),
328
+ ).execute()
@@ -0,0 +1,304 @@
1
+ """fortisapi.
2
+
3
+ This file was automatically generated by APIMATIC v3.0 ( https://www.apimatic.io ).
4
+ """
5
+
6
+ # ruff: noqa: D410, E501, E101, D206
7
+ from apimatic_core.authentication.multiple.and_auth_group import (
8
+ And,
9
+ )
10
+ from apimatic_core.authentication.multiple.single_auth import (
11
+ Single,
12
+ )
13
+ from apimatic_core.request_builder import RequestBuilder
14
+ from apimatic_core.response_handler import ResponseHandler
15
+ from apimatic_core.types.parameter import Parameter
16
+
17
+ from fortisapi.api_helper import APIHelper
18
+ from fortisapi.configuration import Server
19
+ from fortisapi.controllers.base_controller import (
20
+ BaseController,
21
+ )
22
+ from fortisapi.exceptions.response_401_token_exception import (
23
+ Response401tokenException,
24
+ )
25
+ from fortisapi.exceptions.response_412_exception import (
26
+ Response412Exception,
27
+ )
28
+ from fortisapi.http.http_method_enum import (
29
+ HttpMethodEnum,
30
+ )
31
+ from fortisapi.models.response_terminal import (
32
+ ResponseTerminal,
33
+ )
34
+ from fortisapi.models.response_terminals_collection import (
35
+ ResponseTerminalsCollection,
36
+ )
37
+
38
+
39
+ class TerminalsController(BaseController):
40
+ """A Controller to access Endpoints in the fortisapi API."""
41
+
42
+ def __init__(self, config):
43
+ """Initialize TerminalsController object."""
44
+ super(TerminalsController, self).__init__(config)
45
+
46
+ def create_a_new_terminal_device(self,
47
+ body,
48
+ expand=None):
49
+ """Perform a POST request to /v1/terminals.
50
+
51
+ Args:
52
+ body (V1TerminalsRequest): The request body parameter.
53
+ expand (List[Expand40Enum], optional): Most endpoints in the API have a
54
+ way to retrieve extra data related to the current record being
55
+ retrieved. For example, if the API request is for the accountvaults
56
+ endpoint, and the end user also needs to know which contact the token
57
+ belongs to, this data can be returned in the accountvaults endpoint
58
+ request.
59
+
60
+ Returns:
61
+ ResponseTerminal: Response from the API. Created
62
+
63
+ Raises:
64
+ APIException: When an error occurs while fetching the data from the
65
+ remote API. This exception includes the HTTP Response code, an error
66
+ message, and the HTTP body that was received in the request.
67
+
68
+ """
69
+ return super().new_api_call_builder.request(
70
+ RequestBuilder().server(Server.DEFAULT)
71
+ .path("/v1/terminals")
72
+ .http_method(HttpMethodEnum.POST)
73
+ .header_param(Parameter()
74
+ .key("Content-Type")
75
+ .value("application/json"))
76
+ .body_param(Parameter()
77
+ .value(body))
78
+ .query_param(Parameter()
79
+ .key("expand")
80
+ .value(expand))
81
+ .header_param(Parameter()
82
+ .key("accept")
83
+ .value("application/json"))
84
+ .body_serializer(APIHelper.json_serialize)
85
+ .auth(And(Single("user-id"), Single("user-api-key"),
86
+ Single("developer-id"))),
87
+ ).response(
88
+ ResponseHandler()
89
+ .deserializer(APIHelper.json_deserialize)
90
+ .deserialize_into(ResponseTerminal.from_dictionary)
91
+ .local_error("401", "Unauthorized", Response401tokenException)
92
+ .local_error("412", "Precondition Failed", Response412Exception),
93
+ ).execute()
94
+
95
+ def list_all_terminals_related(self,
96
+ page=None,
97
+ order=None,
98
+ filter_by=None,
99
+ expand=None,
100
+ format=None,
101
+ typeahead=None,
102
+ fields=None,
103
+ export_refunds_negative=None):
104
+ """Perform a GET request to /v1/terminals.
105
+
106
+ Args:
107
+ page (Page, optional): Use this field to specify paginate your results,
108
+ by using page size and number. You can use one of the following
109
+ methods: >/endpoint?page={ "number": 1, "size": 50 } >
110
+ >/endpoint?page[number]=1&page[size]=50 >
111
+ order (List[Order21], optional): Criteria used in query string parameters
112
+ to order results. Most fields from the endpoint results can be used
113
+ as a `key`. Unsupported fields or operators will return a `412`.
114
+ Must be encoded, or use syntax that does not require encoding.
115
+ >/endpoint?order[0][key]=created_ts&order[0][operator]=asc >
116
+ >/endpoint?order=[{ "key": "created_ts", "operator": "asc"}] >
117
+ >/endpoint?order=[{ "key": "balance", "operator": "desc"},{ "key":
118
+ "created_ts", "operator": "asc"}] >
119
+ filter_by (List[FilterBy], optional): Filter criteria that can be used in
120
+ query string parameters. Most fields from the endpoint results can
121
+ be used as a `key`. Unsupported fields or operators will return a
122
+ `412`. Must be encoded, or use syntax that does not require encoding.
123
+ >?filter_by[0][key]=first_name&filter_by[0][operator]==&filter_by[0][v
124
+ alue]=Steve > >/endpoint?filter_by=[{ "key": "first_name",
125
+ "operator": "=", "value": "Fred" }] > >/endpoint?filter_by=[{ "key":
126
+ "account_type", "operator": "=", "value": "VISA" }] >
127
+ >/endpoint?filter_by=[{ "key": "created_ts", "operator": ">=",
128
+ "value": "946702799" }, { "key": "created_ts", "operator": "<=",
129
+ value: "1695061891" }] > >/endpoint?filter_by=[{ "key": "last_name",
130
+ "operator": "IN", "value": "Williams,Brown,Allman" }] >
131
+ expand (List[Expand40Enum], optional): Most endpoints in the API have a
132
+ way to retrieve extra data related to the current record being
133
+ retrieved. For example, if the API request is for the accountvaults
134
+ endpoint, and the end user also needs to know which contact the token
135
+ belongs to, this data can be returned in the accountvaults endpoint
136
+ request.
137
+ format (Format1Enum, optional): Reporting format, valid values: csv, tsv
138
+ typeahead (str, optional): You can use any `field_name` from this
139
+ endpoint results to order the list using the value provided as filter
140
+ for the same `field_name`. It will be ordered using the following
141
+ rules: 1) Exact match, 2) Starts with, 3) Contains.
142
+ >/endpoint?filter={ "field_name": "Value" }&_typeahead=field_name >
143
+ fields (List[Field51Enum], optional): You can use any `field_name` from
144
+ this endpoint results to filter the list of fields returned on the
145
+ response.
146
+ export_refunds_negative (bool, optional): When true, converts refund
147
+ amounts to negative values for export formats
148
+
149
+ Returns:
150
+ ResponseTerminalsCollection: Response from the API. OK
151
+
152
+ Raises:
153
+ APIException: When an error occurs while fetching the data from the
154
+ remote API. This exception includes the HTTP Response code, an error
155
+ message, and the HTTP body that was received in the request.
156
+
157
+ """
158
+ return super().new_api_call_builder.request(
159
+ RequestBuilder().server(Server.DEFAULT)
160
+ .path("/v1/terminals")
161
+ .http_method(HttpMethodEnum.GET)
162
+ .query_param(Parameter()
163
+ .key("page")
164
+ .value(page))
165
+ .query_param(Parameter()
166
+ .key("order")
167
+ .value(order))
168
+ .query_param(Parameter()
169
+ .key("filter_by")
170
+ .value(filter_by))
171
+ .query_param(Parameter()
172
+ .key("expand")
173
+ .value(expand))
174
+ .query_param(Parameter()
175
+ .key("_format")
176
+ .value(format))
177
+ .query_param(Parameter()
178
+ .key("_typeahead")
179
+ .value(typeahead))
180
+ .query_param(Parameter()
181
+ .key("fields")
182
+ .value(fields))
183
+ .query_param(Parameter()
184
+ .key("export_refunds_negative")
185
+ .value(export_refunds_negative))
186
+ .header_param(Parameter()
187
+ .key("accept")
188
+ .value("application/json"))
189
+ .auth(And(Single("user-id"), Single("user-api-key"),
190
+ Single("developer-id"))),
191
+ ).response(
192
+ ResponseHandler()
193
+ .deserializer(APIHelper.json_deserialize)
194
+ .deserialize_into(ResponseTerminalsCollection.from_dictionary)
195
+ .local_error("401", "Unauthorized", Response401tokenException),
196
+ ).execute()
197
+
198
+ def view_single_terminals_record(self,
199
+ terminal_id,
200
+ expand=None,
201
+ fields=None):
202
+ """Perform a GET request to /v1/terminals/{terminal_id}.
203
+
204
+ Args:
205
+ terminal_id (str): Terminal ID
206
+ expand (List[Expand40Enum], optional): Most endpoints in the API have a
207
+ way to retrieve extra data related to the current record being
208
+ retrieved. For example, if the API request is for the accountvaults
209
+ endpoint, and the end user also needs to know which contact the token
210
+ belongs to, this data can be returned in the accountvaults endpoint
211
+ request.
212
+ fields (List[Field51Enum], optional): You can use any `field_name` from
213
+ this endpoint results to filter the list of fields returned on the
214
+ response.
215
+
216
+ Returns:
217
+ ResponseTerminal: Response from the API. OK
218
+
219
+ Raises:
220
+ APIException: When an error occurs while fetching the data from the
221
+ remote API. This exception includes the HTTP Response code, an error
222
+ message, and the HTTP body that was received in the request.
223
+
224
+ """
225
+ return super().new_api_call_builder.request(
226
+ RequestBuilder().server(Server.DEFAULT)
227
+ .path("/v1/terminals/{terminal_id}")
228
+ .http_method(HttpMethodEnum.GET)
229
+ .template_param(Parameter()
230
+ .key("terminal_id")
231
+ .value(terminal_id)
232
+ .should_encode(True))
233
+ .query_param(Parameter()
234
+ .key("expand")
235
+ .value(expand))
236
+ .query_param(Parameter()
237
+ .key("fields")
238
+ .value(fields))
239
+ .header_param(Parameter()
240
+ .key("accept")
241
+ .value("application/json"))
242
+ .auth(And(Single("user-id"), Single("user-api-key"),
243
+ Single("developer-id"))),
244
+ ).response(
245
+ ResponseHandler()
246
+ .deserializer(APIHelper.json_deserialize)
247
+ .deserialize_into(ResponseTerminal.from_dictionary)
248
+ .local_error("401", "Unauthorized", Response401tokenException),
249
+ ).execute()
250
+
251
+ def update_terminal_record(self,
252
+ terminal_id,
253
+ body,
254
+ expand=None):
255
+ """Perform a PATCH request to /v1/terminals/{terminal_id}.
256
+
257
+ Args:
258
+ terminal_id (str): Terminal ID
259
+ body (V1TerminalsRequest1): The request body parameter.
260
+ expand (List[Expand40Enum], optional): Most endpoints in the API have a
261
+ way to retrieve extra data related to the current record being
262
+ retrieved. For example, if the API request is for the accountvaults
263
+ endpoint, and the end user also needs to know which contact the token
264
+ belongs to, this data can be returned in the accountvaults endpoint
265
+ request.
266
+
267
+ Returns:
268
+ ResponseTerminal: Response from the API. OK
269
+
270
+ Raises:
271
+ APIException: When an error occurs while fetching the data from the
272
+ remote API. This exception includes the HTTP Response code, an error
273
+ message, and the HTTP body that was received in the request.
274
+
275
+ """
276
+ return super().new_api_call_builder.request(
277
+ RequestBuilder().server(Server.DEFAULT)
278
+ .path("/v1/terminals/{terminal_id}")
279
+ .http_method(HttpMethodEnum.PATCH)
280
+ .template_param(Parameter()
281
+ .key("terminal_id")
282
+ .value(terminal_id)
283
+ .should_encode(True))
284
+ .header_param(Parameter()
285
+ .key("Content-Type")
286
+ .value("application/json"))
287
+ .body_param(Parameter()
288
+ .value(body))
289
+ .query_param(Parameter()
290
+ .key("expand")
291
+ .value(expand))
292
+ .header_param(Parameter()
293
+ .key("accept")
294
+ .value("application/json"))
295
+ .body_serializer(APIHelper.json_serialize)
296
+ .auth(And(Single("user-id"), Single("user-api-key"),
297
+ Single("developer-id"))),
298
+ ).response(
299
+ ResponseHandler()
300
+ .deserializer(APIHelper.json_deserialize)
301
+ .deserialize_into(ResponseTerminal.from_dictionary)
302
+ .local_error("401", "Unauthorized", Response401tokenException)
303
+ .local_error("412", "Precondition Failed", Response412Exception),
304
+ ).execute()