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,171 @@
1
+ """fortisapi.
2
+
3
+ This file was automatically generated by APIMATIC v3.0 ( https://www.apimatic.io ).
4
+ """
5
+
6
+ # ruff: noqa: E501
7
+ from fortisapi.api_helper import APIHelper
8
+
9
+
10
+ class FilterBy(object):
11
+ """Implementation of the 'filter_by' model.
12
+
13
+ Attributes:
14
+ key (str): Resource key to filter by
15
+ operator (Operator1Enum): Filter operand. Please note `=` does not imply a
16
+ strict equality check. Only time fields support the `<=` and `>=`
17
+ operators.
18
+ value (float | str | bool): Filter value. For time fields, `value` must be
19
+ sent in Unix format: `946702799`
20
+ additional_properties (Dict[str, object]): The additional properties for the
21
+ model.
22
+
23
+ """
24
+
25
+ # Create a mapping from Model property names to API property names
26
+ _names = {
27
+ "key": "key",
28
+ "operator": "operator",
29
+ "value": "value",
30
+ }
31
+
32
+ def __init__(
33
+ self,
34
+ key=None,
35
+ operator=None,
36
+ value=None,
37
+ additional_properties=None):
38
+ """Initialize a FilterBy instance."""
39
+ # Initialize members of the class
40
+ self.key = key
41
+ self.operator = operator
42
+ self.value = value
43
+
44
+ # Add additional model properties to the instance
45
+ if additional_properties is None:
46
+ additional_properties = {}
47
+ self.additional_properties = additional_properties
48
+
49
+ @classmethod
50
+ def from_dictionary(cls,
51
+ dictionary):
52
+ """Create an instance of this model from a dictionary
53
+
54
+ Args:
55
+ dictionary (dictionary): A dictionary representation of the object
56
+ as obtained from the deserialization of the server's response. The
57
+ keys MUST match property names in the API description.
58
+
59
+ Returns:
60
+ object: An instance of this structure class.
61
+
62
+ """
63
+ from fortisapi.utilities.union_type_lookup import (
64
+ UnionTypeLookUp,
65
+ )
66
+
67
+ if not isinstance(dictionary, dict) or dictionary is None:
68
+ return None
69
+
70
+ # Extract variables from the dictionary
71
+ key =\
72
+ dictionary.get("key")\
73
+ if dictionary.get("key")\
74
+ else None
75
+ operator = APIHelper.deserialize_union_type(
76
+ UnionTypeLookUp.get("FilterByOperator"),
77
+ dictionary.get("operator"),
78
+ False)\
79
+ if dictionary.get("operator") is not None\
80
+ else None
81
+ value = APIHelper.deserialize_union_type(
82
+ UnionTypeLookUp.get("FilterByValue"),
83
+ dictionary.get("value"),
84
+ False)\
85
+ if dictionary.get("value") is not None\
86
+ else None
87
+
88
+ # Clean out expected properties from dictionary
89
+ additional_properties =\
90
+ {k: v for k, v in dictionary.items() if k not in cls._names.values()}
91
+
92
+ # Return an object of this model
93
+ return cls(key,
94
+ operator,
95
+ value,
96
+ additional_properties)
97
+
98
+ @classmethod
99
+ def validate(cls, dictionary):
100
+ """Validate dictionary against class required properties
101
+
102
+ Args:
103
+ dictionary (dictionary): A dictionary representation of the object
104
+ as obtained from the deserialization of the server's response. The
105
+ keys MUST match property names in the API description.
106
+
107
+ Returns:
108
+ boolean : if dictionary is valid contains required properties.
109
+
110
+ """
111
+ from fortisapi.utilities.union_type_lookup import (
112
+ UnionTypeLookUp,
113
+ )
114
+
115
+ if isinstance(dictionary, cls):
116
+ return APIHelper.is_valid_type(
117
+ value=dictionary.key,
118
+ type_callable=lambda value:
119
+ isinstance(
120
+ value,
121
+ str,
122
+ )) \
123
+ and (UnionTypeLookUp.get("FilterByOperator")
124
+ .validate(dictionary.operator).is_valid) \
125
+ and (UnionTypeLookUp.get("FilterByValue")
126
+ .validate(dictionary.value).is_valid)
127
+
128
+ if not isinstance(dictionary, dict):
129
+ return False
130
+
131
+ return APIHelper.is_valid_type(
132
+ value=dictionary.get("key"),
133
+ type_callable=lambda value:
134
+ isinstance(
135
+ value,
136
+ str,
137
+ )) \
138
+ and (UnionTypeLookUp.get("FilterByOperator")
139
+ .validate(dictionary.get("operator")).is_valid) \
140
+ and (UnionTypeLookUp.get("FilterByValue")
141
+ .validate(dictionary.get("value")).is_valid)
142
+
143
+ def __repr__(self):
144
+ """Return a unambiguous string representation."""
145
+ _key=self.key
146
+ _operator=self.operator
147
+ _value=self.value
148
+ _additional_properties=self.additional_properties
149
+ return (
150
+ f"{self.__class__.__name__}("
151
+ f"key={_key!r}, "
152
+ f"operator={_operator!r}, "
153
+ f"value={_value!r}, "
154
+ f"additional_properties={_additional_properties!r}, "
155
+ f")"
156
+ )
157
+
158
+ def __str__(self):
159
+ """Return a human-readable string representation."""
160
+ _key=self.key
161
+ _operator=self.operator
162
+ _value=self.value
163
+ _additional_properties=self.additional_properties
164
+ return (
165
+ f"{self.__class__.__name__}("
166
+ f"key={_key!s}, "
167
+ f"operator={_operator!s}, "
168
+ f"value={_value!s}, "
169
+ f"additional_properties={_additional_properties!s}, "
170
+ f")"
171
+ )
@@ -0,0 +1,134 @@
1
+ """fortisapi.
2
+
3
+ This file was automatically generated by APIMATIC v3.0 ( https://www.apimatic.io ).
4
+ """
5
+
6
+ # ruff: noqa: E501
7
+ from fortisapi.api_helper import APIHelper
8
+ from fortisapi.models.field_20 import Field20
9
+ from fortisapi.models.settings import Settings
10
+
11
+
12
+ class Footer(object):
13
+ """Implementation of the 'Footer' model.
14
+
15
+ Footer
16
+
17
+ Attributes:
18
+ settings (Settings): The model property of type Settings.
19
+ fields (List[Field20]): The model property of type List[Field20].
20
+ additional_properties (Dict[str, object]): The additional properties for the
21
+ model.
22
+
23
+ """
24
+
25
+ # Create a mapping from Model property names to API property names
26
+ _names = {
27
+ "settings": "settings",
28
+ "fields": "fields",
29
+ }
30
+
31
+ _optionals = [
32
+ "settings",
33
+ "fields",
34
+ ]
35
+
36
+ def __init__(
37
+ self,
38
+ settings=APIHelper.SKIP,
39
+ fields=APIHelper.SKIP,
40
+ additional_properties=None):
41
+ """Initialize a Footer instance."""
42
+ # Initialize members of the class
43
+ if settings is not APIHelper.SKIP:
44
+ self.settings = settings
45
+ if fields is not APIHelper.SKIP:
46
+ self.fields = fields
47
+
48
+ # Add additional model properties to the instance
49
+ if additional_properties is None:
50
+ additional_properties = {}
51
+ self.additional_properties = additional_properties
52
+
53
+ @classmethod
54
+ def from_dictionary(cls,
55
+ dictionary):
56
+ """Create an instance of this model from a dictionary
57
+
58
+ Args:
59
+ dictionary (dictionary): A dictionary representation of the object
60
+ as obtained from the deserialization of the server's response. The
61
+ keys MUST match property names in the API description.
62
+
63
+ Returns:
64
+ object: An instance of this structure class.
65
+
66
+ """
67
+ if not isinstance(dictionary, dict) or dictionary is None:
68
+ return None
69
+
70
+ # Extract variables from the dictionary
71
+ settings =\
72
+ Settings.from_dictionary(
73
+ dictionary.get("settings"))\
74
+ if "settings" in dictionary.keys()\
75
+ else APIHelper.SKIP
76
+ fields = None
77
+ if dictionary.get("fields") is not None:
78
+ fields = [
79
+ Field20.from_dictionary(x)
80
+ for x in dictionary.get("fields")
81
+ ]
82
+ else:
83
+ fields = APIHelper.SKIP
84
+
85
+ # Clean out expected properties from dictionary
86
+ additional_properties =\
87
+ {k: v for k, v in dictionary.items() if k not in cls._names.values()}
88
+
89
+ # Return an object of this model
90
+ return cls(settings,
91
+ fields,
92
+ additional_properties)
93
+
94
+ def __repr__(self):
95
+ """Return a unambiguous string representation."""
96
+ _settings=(
97
+ self.settings
98
+ if hasattr(self, "settings")
99
+ else None
100
+ )
101
+ _fields=(
102
+ self.fields
103
+ if hasattr(self, "fields")
104
+ else None
105
+ )
106
+ _additional_properties=self.additional_properties
107
+ return (
108
+ f"{self.__class__.__name__}("
109
+ f"settings={_settings!r}, "
110
+ f"fields={_fields!r}, "
111
+ f"additional_properties={_additional_properties!r}, "
112
+ f")"
113
+ )
114
+
115
+ def __str__(self):
116
+ """Return a human-readable string representation."""
117
+ _settings=(
118
+ self.settings
119
+ if hasattr(self, "settings")
120
+ else None
121
+ )
122
+ _fields=(
123
+ self.fields
124
+ if hasattr(self, "fields")
125
+ else None
126
+ )
127
+ _additional_properties=self.additional_properties
128
+ return (
129
+ f"{self.__class__.__name__}("
130
+ f"settings={_settings!s}, "
131
+ f"fields={_fields!s}, "
132
+ f"additional_properties={_additional_properties!s}, "
133
+ f")"
134
+ )
@@ -0,0 +1,250 @@
1
+ """fortisapi.
2
+
3
+ This file was automatically generated by APIMATIC v3.0 ( https://www.apimatic.io ).
4
+ """
5
+
6
+ # ruff: noqa: E501
7
+ from fortisapi.api_helper import APIHelper
8
+
9
+
10
+ class Forecast(object):
11
+ """Implementation of the 'Forecast' model.
12
+
13
+ Forecast Information on `expand`
14
+
15
+ Attributes:
16
+ id (str): ID
17
+ recurring_id (str): Recurring ID
18
+ recurring_type (float): Recurring Type
19
+ amount (float): Amount
20
+ month (str): Month
21
+ created_ts (int): Created Time Stamp
22
+ modified_ts (int): Modified Time Stamp
23
+ additional_properties (Dict[str, object]): The additional properties for the
24
+ model.
25
+
26
+ """
27
+
28
+ # Create a mapping from Model property names to API property names
29
+ _names = {
30
+ "id": "id",
31
+ "recurring_id": "recurring_id",
32
+ "recurring_type": "recurring_type",
33
+ "amount": "amount",
34
+ "month": "month",
35
+ "created_ts": "created_ts",
36
+ "modified_ts": "modified_ts",
37
+ }
38
+
39
+ _optionals = [
40
+ "id",
41
+ "recurring_id",
42
+ "recurring_type",
43
+ "amount",
44
+ "month",
45
+ "created_ts",
46
+ "modified_ts",
47
+ ]
48
+
49
+ _nullables = [
50
+ "recurring_type",
51
+ "amount",
52
+ "month",
53
+ "created_ts",
54
+ "modified_ts",
55
+ ]
56
+
57
+ def __init__(
58
+ self,
59
+ id=APIHelper.SKIP,
60
+ recurring_id=APIHelper.SKIP,
61
+ recurring_type=APIHelper.SKIP,
62
+ amount=APIHelper.SKIP,
63
+ month=APIHelper.SKIP,
64
+ created_ts=APIHelper.SKIP,
65
+ modified_ts=APIHelper.SKIP,
66
+ additional_properties=None):
67
+ """Initialize a Forecast instance."""
68
+ # Initialize members of the class
69
+ if id is not APIHelper.SKIP:
70
+ self.id = id
71
+ if recurring_id is not APIHelper.SKIP:
72
+ self.recurring_id = recurring_id
73
+ if recurring_type is not APIHelper.SKIP:
74
+ self.recurring_type = recurring_type
75
+ if amount is not APIHelper.SKIP:
76
+ self.amount = amount
77
+ if month is not APIHelper.SKIP:
78
+ self.month = month
79
+ if created_ts is not APIHelper.SKIP:
80
+ self.created_ts = created_ts
81
+ if modified_ts is not APIHelper.SKIP:
82
+ self.modified_ts = modified_ts
83
+
84
+ # Add additional model properties to the instance
85
+ if additional_properties is None:
86
+ additional_properties = {}
87
+ self.additional_properties = additional_properties
88
+
89
+ @classmethod
90
+ def from_dictionary(cls,
91
+ dictionary):
92
+ """Create an instance of this model from a dictionary
93
+
94
+ Args:
95
+ dictionary (dictionary): A dictionary representation of the object
96
+ as obtained from the deserialization of the server's response. The
97
+ keys MUST match property names in the API description.
98
+
99
+ Returns:
100
+ object: An instance of this structure class.
101
+
102
+ """
103
+ if not isinstance(dictionary, dict) or dictionary is None:
104
+ return None
105
+
106
+ # Extract variables from the dictionary
107
+ id =\
108
+ dictionary.get("id")\
109
+ if dictionary.get("id")\
110
+ else APIHelper.SKIP
111
+ recurring_id =\
112
+ dictionary.get("recurring_id")\
113
+ if dictionary.get("recurring_id")\
114
+ else APIHelper.SKIP
115
+ recurring_type =\
116
+ dictionary.get("recurring_type")\
117
+ if "recurring_type" in dictionary.keys()\
118
+ else APIHelper.SKIP
119
+ amount =\
120
+ dictionary.get("amount")\
121
+ if "amount" in dictionary.keys()\
122
+ else APIHelper.SKIP
123
+ month =\
124
+ dictionary.get("month")\
125
+ if "month" in dictionary.keys()\
126
+ else APIHelper.SKIP
127
+ created_ts =\
128
+ dictionary.get("created_ts")\
129
+ if "created_ts" in dictionary.keys()\
130
+ else APIHelper.SKIP
131
+ modified_ts =\
132
+ dictionary.get("modified_ts")\
133
+ if "modified_ts" in dictionary.keys()\
134
+ else APIHelper.SKIP
135
+
136
+ # Clean out expected properties from dictionary
137
+ additional_properties =\
138
+ {k: v for k, v in dictionary.items() if k not in cls._names.values()}
139
+
140
+ # Return an object of this model
141
+ return cls(id,
142
+ recurring_id,
143
+ recurring_type,
144
+ amount,
145
+ month,
146
+ created_ts,
147
+ modified_ts,
148
+ additional_properties)
149
+
150
+ def __repr__(self):
151
+ """Return a unambiguous string representation."""
152
+ _id=(
153
+ self.id
154
+ if hasattr(self, "id")
155
+ else None
156
+ )
157
+ _recurring_id=(
158
+ self.recurring_id
159
+ if hasattr(self, "recurring_id")
160
+ else None
161
+ )
162
+ _recurring_type=(
163
+ self.recurring_type
164
+ if hasattr(self, "recurring_type")
165
+ else None
166
+ )
167
+ _amount=(
168
+ self.amount
169
+ if hasattr(self, "amount")
170
+ else None
171
+ )
172
+ _month=(
173
+ self.month
174
+ if hasattr(self, "month")
175
+ else None
176
+ )
177
+ _created_ts=(
178
+ self.created_ts
179
+ if hasattr(self, "created_ts")
180
+ else None
181
+ )
182
+ _modified_ts=(
183
+ self.modified_ts
184
+ if hasattr(self, "modified_ts")
185
+ else None
186
+ )
187
+ _additional_properties=self.additional_properties
188
+ return (
189
+ f"{self.__class__.__name__}("
190
+ f"id={_id!r}, "
191
+ f"recurring_id={_recurring_id!r}, "
192
+ f"recurring_type={_recurring_type!r}, "
193
+ f"amount={_amount!r}, "
194
+ f"month={_month!r}, "
195
+ f"created_ts={_created_ts!r}, "
196
+ f"modified_ts={_modified_ts!r}, "
197
+ f"additional_properties={_additional_properties!r}, "
198
+ f")"
199
+ )
200
+
201
+ def __str__(self):
202
+ """Return a human-readable string representation."""
203
+ _id=(
204
+ self.id
205
+ if hasattr(self, "id")
206
+ else None
207
+ )
208
+ _recurring_id=(
209
+ self.recurring_id
210
+ if hasattr(self, "recurring_id")
211
+ else None
212
+ )
213
+ _recurring_type=(
214
+ self.recurring_type
215
+ if hasattr(self, "recurring_type")
216
+ else None
217
+ )
218
+ _amount=(
219
+ self.amount
220
+ if hasattr(self, "amount")
221
+ else None
222
+ )
223
+ _month=(
224
+ self.month
225
+ if hasattr(self, "month")
226
+ else None
227
+ )
228
+ _created_ts=(
229
+ self.created_ts
230
+ if hasattr(self, "created_ts")
231
+ else None
232
+ )
233
+ _modified_ts=(
234
+ self.modified_ts
235
+ if hasattr(self, "modified_ts")
236
+ else None
237
+ )
238
+ _additional_properties=self.additional_properties
239
+ return (
240
+ f"{self.__class__.__name__}("
241
+ f"id={_id!s}, "
242
+ f"recurring_id={_recurring_id!s}, "
243
+ f"recurring_type={_recurring_type!s}, "
244
+ f"amount={_amount!s}, "
245
+ f"month={_month!s}, "
246
+ f"created_ts={_created_ts!s}, "
247
+ f"modified_ts={_modified_ts!s}, "
248
+ f"additional_properties={_additional_properties!s}, "
249
+ f")"
250
+ )
@@ -0,0 +1,47 @@
1
+ """fortisapi.
2
+
3
+ This file was automatically generated by APIMATIC v3.0 ( https://www.apimatic.io ).
4
+ """
5
+
6
+ # ruff: noqa: E501
7
+
8
+ class Format1Enum(object):
9
+ """Implementation of the '_format1' enum.
10
+
11
+ Reporting format, valid values: csv, tsv
12
+
13
+ Attributes:
14
+ CSV: The enum member of type str.
15
+ TSV: The enum member of type str.
16
+ additional_properties (Dict[str, object]): The additional properties for the
17
+ model.
18
+
19
+ """
20
+
21
+ CSV = "csv"
22
+
23
+ TSV = "tsv"
24
+
25
+ @classmethod
26
+ def from_value(cls, value, default=None):
27
+ """Return the matching enum value for the given input."""
28
+ if value is None:
29
+ return default
30
+
31
+ # If numeric and matches directly
32
+ if isinstance(value, int):
33
+ for name, val in cls.__dict__.items():
34
+ if not name.startswith("_") and val == value:
35
+ return val
36
+
37
+ # If string, perform case-insensitive match
38
+ if isinstance(value, str):
39
+ value_lower = value.lower()
40
+ for name, val in cls.__dict__.items():
41
+ if not name.startswith("_") and (
42
+ name.lower() == value_lower or str(val).lower() == value_lower
43
+ ):
44
+ return val
45
+
46
+ # Fallback to default
47
+ return default
@@ -0,0 +1,47 @@
1
+ """fortisapi.
2
+
3
+ This file was automatically generated by APIMATIC v3.0 ( https://www.apimatic.io ).
4
+ """
5
+
6
+ # ruff: noqa: E501
7
+
8
+ class FormatEnum(object):
9
+ """Implementation of the 'Format' enum.
10
+
11
+ Options include: api-default
12
+
13
+ Attributes:
14
+ APIDEFAULT: The enum member of type str.
15
+ PARTNER: The enum member of type str.
16
+ additional_properties (Dict[str, object]): The additional properties for the
17
+ model.
18
+
19
+ """
20
+
21
+ APIDEFAULT = "api-default"
22
+
23
+ PARTNER = "partner"
24
+
25
+ @classmethod
26
+ def from_value(cls, value, default=None):
27
+ """Return the matching enum value for the given input."""
28
+ if value is None:
29
+ return default
30
+
31
+ # If numeric and matches directly
32
+ if isinstance(value, int):
33
+ for name, val in cls.__dict__.items():
34
+ if not name.startswith("_") and val == value:
35
+ return val
36
+
37
+ # If string, perform case-insensitive match
38
+ if isinstance(value, str):
39
+ value_lower = value.lower()
40
+ for name, val in cls.__dict__.items():
41
+ if not name.startswith("_") and (
42
+ name.lower() == value_lower or str(val).lower() == value_lower
43
+ ):
44
+ return val
45
+
46
+ # Fallback to default
47
+ return default