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.
- fortis_python_sdk-1.0.0.dist-info/METADATA +183 -0
- fortis_python_sdk-1.0.0.dist-info/RECORD +699 -0
- fortis_python_sdk-1.0.0.dist-info/WHEEL +5 -0
- fortis_python_sdk-1.0.0.dist-info/licenses/LICENSE +28 -0
- fortis_python_sdk-1.0.0.dist-info/top_level.txt +1 -0
- fortisapi/__init__.py +12 -0
- fortisapi/api_helper.py +19 -0
- fortisapi/configuration.py +294 -0
- fortisapi/controllers/__init__.py +40 -0
- fortisapi/controllers/apple_pay_validate_merchant_controller.py +84 -0
- fortisapi/controllers/async_processing_controller.py +78 -0
- fortisapi/controllers/base_controller.py +67 -0
- fortisapi/controllers/batches_controller.py +179 -0
- fortisapi/controllers/calculate_surcharge_controller.py +76 -0
- fortisapi/controllers/contacts_controller.py +398 -0
- fortisapi/controllers/declined_recurring_transactions_controller.py +326 -0
- fortisapi/controllers/device_terms_controller.py +242 -0
- fortisapi/controllers/elements_controller.py +129 -0
- fortisapi/controllers/enterprise_link_redirect_controller.py +81 -0
- fortisapi/controllers/full_boarding_controller.py +85 -0
- fortisapi/controllers/level_3_data_controller.py +219 -0
- fortisapi/controllers/locations_controller.py +478 -0
- fortisapi/controllers/m_3_ds_authentication_controller.py +90 -0
- fortisapi/controllers/m_3_ds_transactions_controller.py +84 -0
- fortisapi/controllers/merchant_deposits_controller.py +295 -0
- fortisapi/controllers/merchant_details_controller.py +82 -0
- fortisapi/controllers/on_boarding_controller.py +100 -0
- fortisapi/controllers/paylinks_controller.py +396 -0
- fortisapi/controllers/payment_card_reader_token_controller.py +76 -0
- fortisapi/controllers/quick_invoices_controller.py +531 -0
- fortisapi/controllers/recurring_controller.py +545 -0
- fortisapi/controllers/reports_controller.py +209 -0
- fortisapi/controllers/signatures_controller.py +249 -0
- fortisapi/controllers/tags_controller.py +328 -0
- fortisapi/controllers/terminals_controller.py +304 -0
- fortisapi/controllers/tickets_controller.py +249 -0
- fortisapi/controllers/tokens_controller.py +679 -0
- fortisapi/controllers/transaction_ach_retries_controller.py +250 -0
- fortisapi/controllers/transactions_ach_controller.py +398 -0
- fortisapi/controllers/transactions_cash_controller.py +123 -0
- fortisapi/controllers/transactions_credit_card_controller.py +1796 -0
- fortisapi/controllers/transactions_ebt_card_controller.py +147 -0
- fortisapi/controllers/transactions_read_controller.py +248 -0
- fortisapi/controllers/transactions_updates_controller.py +435 -0
- fortisapi/controllers/webhooks_controller.py +493 -0
- fortisapi/exceptions/__init__.py +8 -0
- fortisapi/exceptions/api_exception.py +36 -0
- fortisapi/exceptions/response_401_token_exception.py +77 -0
- fortisapi/exceptions/response_412_exception.py +109 -0
- fortisapi/exceptions/response_error_exception.py +109 -0
- fortisapi/fortisapi_client.py +360 -0
- fortisapi/http/__init__.py +11 -0
- fortisapi/http/auth/__init__.py +8 -0
- fortisapi/http/auth/access_token.py +100 -0
- fortisapi/http/auth/developer_id.py +100 -0
- fortisapi/http/auth/user_api_key.py +100 -0
- fortisapi/http/auth/user_id.py +100 -0
- fortisapi/http/http_call_back.py +20 -0
- fortisapi/http/http_client_provider.py +23 -0
- fortisapi/http/http_method_enum.py +25 -0
- fortisapi/http/http_request.py +55 -0
- fortisapi/http/http_response.py +45 -0
- fortisapi/http/proxy_settings.py +50 -0
- fortisapi/models/__init__.py +636 -0
- fortisapi/models/account_info.py +519 -0
- fortisapi/models/account_type_12_enum.py +47 -0
- fortisapi/models/account_type_13_enum.py +51 -0
- fortisapi/models/account_type_16_enum.py +51 -0
- fortisapi/models/account_type_enum.py +83 -0
- fortisapi/models/account_vault.py +1408 -0
- fortisapi/models/account_vault_cau_log.py +201 -0
- fortisapi/models/account_vault_cau_product_transaction.py +754 -0
- fortisapi/models/ach_product_transaction.py +3048 -0
- fortisapi/models/ach_sec_code_1_enum.py +59 -0
- fortisapi/models/ach_sec_code_31_enum.py +61 -0
- fortisapi/models/ach_sec_code_3_enum.py +59 -0
- fortisapi/models/ach_sec_code_enum.py +67 -0
- fortisapi/models/acs_challenge_mandated_enum.py +52 -0
- fortisapi/models/action_enum.py +70 -0
- fortisapi/models/active_recurring.py +975 -0
- fortisapi/models/additional_access.py +102 -0
- fortisapi/models/additional_amount.py +201 -0
- fortisapi/models/addon.py +222 -0
- fortisapi/models/addon_transaction_type_enum.py +57 -0
- fortisapi/models/address.py +205 -0
- fortisapi/models/address_1.py +228 -0
- fortisapi/models/address_2.py +204 -0
- fortisapi/models/address_71.py +186 -0
- fortisapi/models/address_match_enum.py +54 -0
- fortisapi/models/address_type_enum.py +50 -0
- fortisapi/models/all_tag.py +194 -0
- fortisapi/models/alt_bank_account.py +180 -0
- fortisapi/models/amount_ind_enum.py +121 -0
- fortisapi/models/app_delivery_enum.py +50 -0
- fortisapi/models/auth_currency_enum.py +168 -0
- fortisapi/models/avs_enum.py +56 -0
- fortisapi/models/balance.py +154 -0
- fortisapi/models/bank_account.py +156 -0
- fortisapi/models/bank_account_1.py +186 -0
- fortisapi/models/batch_risk_config.py +132 -0
- fortisapi/models/billing_address.py +233 -0
- fortisapi/models/billing_address_1.py +258 -0
- fortisapi/models/billing_address_24.py +263 -0
- fortisapi/models/billing_address_5.py +155 -0
- fortisapi/models/body.py +134 -0
- fortisapi/models/branding_domain.py +867 -0
- fortisapi/models/branding_domain_1.py +867 -0
- fortisapi/models/broad_info.py +241 -0
- fortisapi/models/browser_information.py +401 -0
- fortisapi/models/business_category_enum.py +77 -0
- fortisapi/models/business_type_enum.py +365 -0
- fortisapi/models/cardholder.py +324 -0
- fortisapi/models/cardholder_account.py +211 -0
- fortisapi/models/category_enum.py +133 -0
- fortisapi/models/cau_subscribe_type_code_enum.py +50 -0
- fortisapi/models/cau_subscribe_type_id_enum.py +50 -0
- fortisapi/models/cau_summary_status_id_enum.py +53 -0
- fortisapi/models/cc_product_transaction.py +3048 -0
- fortisapi/models/ch_acc_age_ind_enum.py +66 -0
- fortisapi/models/ch_acc_change_ind_enum.py +63 -0
- fortisapi/models/ch_acc_pw_change_ind_enum.py +67 -0
- fortisapi/models/challenge_message_extension.py +177 -0
- fortisapi/models/challenge_window_size_enum.py +73 -0
- fortisapi/models/changelog.py +280 -0
- fortisapi/models/changelog_detail.py +178 -0
- fortisapi/models/children.py +822 -0
- fortisapi/models/communication_type_enum.py +50 -0
- fortisapi/models/conditions.py +125 -0
- fortisapi/models/conditions_18.py +146 -0
- fortisapi/models/conditions_181.py +146 -0
- fortisapi/models/conditions_191.py +146 -0
- fortisapi/models/conditions_27.py +125 -0
- fortisapi/models/conditions_4.py +146 -0
- fortisapi/models/conditions_41.py +146 -0
- fortisapi/models/conditions_42.py +146 -0
- fortisapi/models/conditions_43.py +146 -0
- fortisapi/models/contact.py +179 -0
- fortisapi/models/contact_1.py +822 -0
- fortisapi/models/contact_9.py +169 -0
- fortisapi/models/contact_user_default_entry_page_enum.py +59 -0
- fortisapi/models/context.py +125 -0
- fortisapi/models/country_enum.py +47 -0
- fortisapi/models/created_user.py +1197 -0
- fortisapi/models/currency_code_enum.py +186 -0
- fortisapi/models/currency_type.py +131 -0
- fortisapi/models/data.py +225 -0
- fortisapi/models/data_1.py +105 -0
- fortisapi/models/data_10.py +1283 -0
- fortisapi/models/data_11.py +948 -0
- fortisapi/models/data_12.py +369 -0
- fortisapi/models/data_13.py +263 -0
- fortisapi/models/data_14.py +552 -0
- fortisapi/models/data_15.py +102 -0
- fortisapi/models/data_16.py +930 -0
- fortisapi/models/data_17.py +920 -0
- fortisapi/models/data_18.py +102 -0
- fortisapi/models/data_19.py +631 -0
- fortisapi/models/data_2.py +1134 -0
- fortisapi/models/data_20.py +1657 -0
- fortisapi/models/data_21.py +223 -0
- fortisapi/models/data_22.py +1341 -0
- fortisapi/models/data_23.py +245 -0
- fortisapi/models/data_24.py +219 -0
- fortisapi/models/data_25.py +1456 -0
- fortisapi/models/data_26.py +376 -0
- fortisapi/models/data_27.py +1681 -0
- fortisapi/models/data_28.py +380 -0
- fortisapi/models/data_29.py +4233 -0
- fortisapi/models/data_3.py +296 -0
- fortisapi/models/data_30.py +421 -0
- fortisapi/models/data_31.py +150 -0
- fortisapi/models/data_34.py +103 -0
- fortisapi/models/data_35.py +259 -0
- fortisapi/models/data_36.py +537 -0
- fortisapi/models/data_4.py +482 -0
- fortisapi/models/data_5.py +171 -0
- fortisapi/models/data_6.py +469 -0
- fortisapi/models/data_7.py +230 -0
- fortisapi/models/data_8.py +616 -0
- fortisapi/models/data_9.py +129 -0
- fortisapi/models/debit_credit_enum.py +48 -0
- fortisapi/models/declined_recurring_notification.py +251 -0
- fortisapi/models/default_transaction_type_enum.py +50 -0
- fortisapi/models/delivery_method_enum.py +61 -0
- fortisapi/models/delivery_timeframe_enum.py +61 -0
- fortisapi/models/deposit_type_enum.py +50 -0
- fortisapi/models/detail.py +173 -0
- fortisapi/models/detail_1.py +323 -0
- fortisapi/models/detail_2.py +273 -0
- fortisapi/models/developer_company.py +270 -0
- fortisapi/models/device.py +123 -0
- fortisapi/models/device_binding_status_enum.py +373 -0
- fortisapi/models/device_channel_enum.py +51 -0
- fortisapi/models/document.py +115 -0
- fortisapi/models/e_format_enum.py +62 -0
- fortisapi/models/ebt_plan_enum.py +50 -0
- fortisapi/models/ebt_type_enum.py +61 -0
- fortisapi/models/email_blacklist.py +178 -0
- fortisapi/models/email_enum.py +47 -0
- fortisapi/models/emv_receipt_data.py +244 -0
- fortisapi/models/entry_mode_id_enum.py +73 -0
- fortisapi/models/expand_108_enum.py +48 -0
- fortisapi/models/expand_10_enum.py +42 -0
- fortisapi/models/expand_11_enum.py +99 -0
- fortisapi/models/expand_15_enum.py +42 -0
- fortisapi/models/expand_17_enum.py +96 -0
- fortisapi/models/expand_18_enum.py +84 -0
- fortisapi/models/expand_1_enum.py +75 -0
- fortisapi/models/expand_26_enum.py +87 -0
- fortisapi/models/expand_34_enum.py +42 -0
- fortisapi/models/expand_37_enum.py +42 -0
- fortisapi/models/expand_40_enum.py +63 -0
- fortisapi/models/expand_44_enum.py +48 -0
- fortisapi/models/expand_47_enum.py +69 -0
- fortisapi/models/expand_57_enum.py +54 -0
- fortisapi/models/expand_5_enum.py +48 -0
- fortisapi/models/expand_60_enum.py +171 -0
- fortisapi/models/expand_8_enum.py +57 -0
- fortisapi/models/expand_enum.py +51 -0
- fortisapi/models/field.py +125 -0
- fortisapi/models/field_20.py +267 -0
- fortisapi/models/field_27_enum.py +129 -0
- fortisapi/models/field_28_enum.py +168 -0
- fortisapi/models/field_30_enum.py +75 -0
- fortisapi/models/field_31_enum.py +87 -0
- fortisapi/models/field_33_enum.py +183 -0
- fortisapi/models/field_34_enum.py +195 -0
- fortisapi/models/field_35_enum.py +180 -0
- fortisapi/models/field_36_enum.py +192 -0
- fortisapi/models/field_37_enum.py +102 -0
- fortisapi/models/field_39_enum.py +186 -0
- fortisapi/models/field_41_enum.py +237 -0
- fortisapi/models/field_43_enum.py +198 -0
- fortisapi/models/field_45_enum.py +78 -0
- fortisapi/models/field_46_enum.py +126 -0
- fortisapi/models/field_47_enum.py +60 -0
- fortisapi/models/field_49_enum.py +57 -0
- fortisapi/models/field_51_enum.py +210 -0
- fortisapi/models/field_53_enum.py +84 -0
- fortisapi/models/field_55_enum.py +231 -0
- fortisapi/models/field_57_enum.py +75 -0
- fortisapi/models/field_59_enum.py +510 -0
- fortisapi/models/field_configuration.py +202 -0
- fortisapi/models/file.py +412 -0
- fortisapi/models/file_2.py +125 -0
- fortisapi/models/file_5.py +130 -0
- fortisapi/models/filter_by.py +171 -0
- fortisapi/models/footer.py +134 -0
- fortisapi/models/forecast.py +250 -0
- fortisapi/models/format_1_enum.py +47 -0
- fortisapi/models/format_enum.py +47 -0
- fortisapi/models/header.py +134 -0
- fortisapi/models/helppage.py +270 -0
- fortisapi/models/home_phone.py +130 -0
- fortisapi/models/hosted_payment_page.py +558 -0
- fortisapi/models/identity_verification.py +183 -0
- fortisapi/models/identity_verification_2.py +183 -0
- fortisapi/models/identity_verification_27.py +165 -0
- fortisapi/models/idtype_enum.py +47 -0
- fortisapi/models/iias_ind_enum.py +64 -0
- fortisapi/models/industry_type_enum.py +59 -0
- fortisapi/models/initiation_type_enum.py +92 -0
- fortisapi/models/interval_type_enum.py +50 -0
- fortisapi/models/item_list.py +125 -0
- fortisapi/models/item_list_4.py +99 -0
- fortisapi/models/item_list_5.py +130 -0
- fortisapi/models/joi.py +104 -0
- fortisapi/models/joi_18.py +111 -0
- fortisapi/models/joi_19.py +111 -0
- fortisapi/models/joi_27.py +104 -0
- fortisapi/models/joi_4.py +110 -0
- fortisapi/models/kyc_response_object.py +101 -0
- fortisapi/models/level_3_data.py +481 -0
- fortisapi/models/level_3_data_5.py +324 -0
- fortisapi/models/level_3_data_6.py +469 -0
- fortisapi/models/level_3_default.py +481 -0
- fortisapi/models/line_item.py +450 -0
- fortisapi/models/line_item_13.py +449 -0
- fortisapi/models/line_item_19.py +360 -0
- fortisapi/models/line_item_20.py +273 -0
- fortisapi/models/links.py +196 -0
- fortisapi/models/list.py +650 -0
- fortisapi/models/list_1.py +1134 -0
- fortisapi/models/list_10.py +1657 -0
- fortisapi/models/list_11.py +1341 -0
- fortisapi/models/list_12.py +336 -0
- fortisapi/models/list_13.py +731 -0
- fortisapi/models/list_14.py +245 -0
- fortisapi/models/list_15.py +219 -0
- fortisapi/models/list_16.py +1456 -0
- fortisapi/models/list_17.py +376 -0
- fortisapi/models/list_18.py +1681 -0
- fortisapi/models/list_19.py +380 -0
- fortisapi/models/list_20.py +4233 -0
- fortisapi/models/list_3.py +296 -0
- fortisapi/models/list_4.py +469 -0
- fortisapi/models/list_5.py +948 -0
- fortisapi/models/list_6.py +1283 -0
- fortisapi/models/list_8.py +552 -0
- fortisapi/models/list_9.py +920 -0
- fortisapi/models/location.py +756 -0
- fortisapi/models/location_18.py +217 -0
- fortisapi/models/location_5.py +227 -0
- fortisapi/models/location_billing_account.py +509 -0
- fortisapi/models/location_type_26_enum.py +51 -0
- fortisapi/models/location_type_enum.py +50 -0
- fortisapi/models/locationmarketplace.py +247 -0
- fortisapi/models/log_email.py +364 -0
- fortisapi/models/log_sms.py +315 -0
- fortisapi/models/marketplace.py +247 -0
- fortisapi/models/masync.py +128 -0
- fortisapi/models/merchant_list.py +193 -0
- fortisapi/models/merchant_risk_indicator.py +341 -0
- fortisapi/models/message_category_enum.py +119 -0
- fortisapi/models/message_extension.py +177 -0
- fortisapi/models/meta.py +107 -0
- fortisapi/models/method_3.py +147 -0
- fortisapi/models/method_50.py +145 -0
- fortisapi/models/method_53_enum.py +56 -0
- fortisapi/models/method_5_enum.py +56 -0
- fortisapi/models/method_enum.py +56 -0
- fortisapi/models/mobile_phone.py +130 -0
- fortisapi/models/modified_user.py +1197 -0
- fortisapi/models/multi_transaction.py +147 -0
- fortisapi/models/operator_1_enum.py +59 -0
- fortisapi/models/operator_enum.py +47 -0
- fortisapi/models/order_21.py +99 -0
- fortisapi/models/order_enum.py +47 -0
- fortisapi/models/owner.py +322 -0
- fortisapi/models/ownership_type_enum.py +71 -0
- fortisapi/models/page.py +132 -0
- fortisapi/models/pagination.py +196 -0
- fortisapi/models/parent.py +822 -0
- fortisapi/models/parent_3.py +756 -0
- fortisapi/models/partner_enum.py +71 -0
- fortisapi/models/paylink_action_enum.py +47 -0
- fortisapi/models/payment_acc_ind_enum.py +67 -0
- fortisapi/models/payment_method_16_enum.py +47 -0
- fortisapi/models/payment_method_1_enum.py +47 -0
- fortisapi/models/payment_method_9_enum.py +50 -0
- fortisapi/models/payment_method_enum.py +50 -0
- fortisapi/models/payment_recurring_notification.py +251 -0
- fortisapi/models/payment_type_priority_enum.py +47 -0
- fortisapi/models/postback_log.py +295 -0
- fortisapi/models/postback_status_id_enum.py +53 -0
- fortisapi/models/pre_order_purchase_ind_enum.py +52 -0
- fortisapi/models/preferred_language_enum.py +51 -0
- fortisapi/models/preferred_protocol_version_enum.py +65 -0
- fortisapi/models/pricing_element.py +147 -0
- fortisapi/models/primary_principal.py +396 -0
- fortisapi/models/primary_principal_1.py +376 -0
- fortisapi/models/process_method_enum.py +47 -0
- fortisapi/models/processor_enum.py +59 -0
- fortisapi/models/product_accountvault.py +317 -0
- fortisapi/models/product_file.py +416 -0
- fortisapi/models/product_file_1.py +414 -0
- fortisapi/models/product_invoice.py +651 -0
- fortisapi/models/product_recurring.py +387 -0
- fortisapi/models/product_token.py +317 -0
- fortisapi/models/product_transaction.py +3048 -0
- fortisapi/models/product_transaction_1.py +3046 -0
- fortisapi/models/purchase.py +501 -0
- fortisapi/models/quick_invoice.py +1256 -0
- fortisapi/models/quick_invoice_setting.py +299 -0
- fortisapi/models/quick_invoice_view.py +176 -0
- fortisapi/models/reason_code.py +131 -0
- fortisapi/models/reason_code_id_1_enum.py +935 -0
- fortisapi/models/reason_code_id_enum.py +578 -0
- fortisapi/models/reason_model_enum.py +74 -0
- fortisapi/models/received_email.py +364 -0
- fortisapi/models/recipients_enum.py +62 -0
- fortisapi/models/recurring.py +975 -0
- fortisapi/models/recurring_3.py +977 -0
- fortisapi/models/recurring_flag_enum.py +64 -0
- fortisapi/models/recurring_split.py +200 -0
- fortisapi/models/recurring_type_id_enum.py +47 -0
- fortisapi/models/registration_field_enum.py +87 -0
- fortisapi/models/rejected_transaction.py +3198 -0
- fortisapi/models/rejected_transaction_ach_retry.py +244 -0
- fortisapi/models/relationship_enum.py +50 -0
- fortisapi/models/reorder_items_ind_enum.py +51 -0
- fortisapi/models/report_export_type_enum.py +53 -0
- fortisapi/models/resource_12_enum.py +52 -0
- fortisapi/models/resource_2_enum.py +50 -0
- fortisapi/models/resource_enum.py +55 -0
- fortisapi/models/response_416_date_range.py +148 -0
- fortisapi/models/response_417_filter_channels.py +148 -0
- fortisapi/models/response_apple_pay_validate_merchant.py +126 -0
- fortisapi/models/response_async_status.py +126 -0
- fortisapi/models/response_batchs_collection.py +228 -0
- fortisapi/models/response_calculate_surcharge.py +126 -0
- fortisapi/models/response_contact.py +126 -0
- fortisapi/models/response_contact_searchs_collection.py +228 -0
- fortisapi/models/response_contacts_collection.py +228 -0
- fortisapi/models/response_declined_recurring_transaction.py +126 -0
- fortisapi/models/response_declined_recurring_transaction_payment.py +126 -0
- fortisapi/models/response_declined_recurring_transaction_resend.py +126 -0
- fortisapi/models/response_declined_recurring_transactions_collection.py +228 -0
- fortisapi/models/response_device_term.py +126 -0
- fortisapi/models/response_device_terms_collection.py +228 -0
- fortisapi/models/response_fullboarding.py +126 -0
- fortisapi/models/response_location.py +126 -0
- fortisapi/models/response_location_info.py +126 -0
- fortisapi/models/response_location_infos_collection.py +228 -0
- fortisapi/models/response_location_searchs_collection.py +228 -0
- fortisapi/models/response_locations_collection.py +228 -0
- fortisapi/models/response_merchant.py +126 -0
- fortisapi/models/response_merchant_deposit.py +126 -0
- fortisapi/models/response_merchant_deposits_collection.py +228 -0
- fortisapi/models/response_merchant_details.py +126 -0
- fortisapi/models/response_onboarding.py +126 -0
- fortisapi/models/response_paylink.py +126 -0
- fortisapi/models/response_paylinks_collection.py +228 -0
- fortisapi/models/response_payment_card_reader_token.py +126 -0
- fortisapi/models/response_quick_invoice.py +126 -0
- fortisapi/models/response_quick_invoice_resend.py +126 -0
- fortisapi/models/response_quick_invoices_collection.py +228 -0
- fortisapi/models/response_recurring.py +126 -0
- fortisapi/models/response_recurrings_collection.py +228 -0
- fortisapi/models/response_reporting_reports_cc_settled_transactions_collection.py +231 -0
- fortisapi/models/response_reporting_reports_chargebacks_collection.py +228 -0
- fortisapi/models/response_signature.py +126 -0
- fortisapi/models/response_signatures_collection.py +228 -0
- fortisapi/models/response_tag.py +126 -0
- fortisapi/models/response_tags_collection.py +228 -0
- fortisapi/models/response_terminal.py +126 -0
- fortisapi/models/response_terminals_collection.py +228 -0
- fortisapi/models/response_three_ds_authentication.py +126 -0
- fortisapi/models/response_three_ds_transaction.py +126 -0
- fortisapi/models/response_ticket.py +126 -0
- fortisapi/models/response_ticket_intention.py +126 -0
- fortisapi/models/response_tickets_collection.py +228 -0
- fortisapi/models/response_token.py +126 -0
- fortisapi/models/response_tokens_collection.py +228 -0
- fortisapi/models/response_transaction.py +126 -0
- fortisapi/models/response_transaction_ach_retry.py +126 -0
- fortisapi/models/response_transaction_ach_retrys_collection.py +228 -0
- fortisapi/models/response_transaction_bin_info.py +126 -0
- fortisapi/models/response_transaction_intention.py +126 -0
- fortisapi/models/response_transaction_level_3.py +126 -0
- fortisapi/models/response_transaction_level_3_master.py +126 -0
- fortisapi/models/response_transaction_level_3_visa.py +126 -0
- fortisapi/models/response_transaction_processing.py +126 -0
- fortisapi/models/response_transactions_collection.py +228 -0
- fortisapi/models/response_webhook.py +126 -0
- fortisapi/models/result.py +152 -0
- fortisapi/models/retry_transaction.py +3198 -0
- fortisapi/models/retry_transaction_ach_retry.py +246 -0
- fortisapi/models/return_fee_transaction.py +3198 -0
- fortisapi/models/return_fee_transaction_ach_retry.py +246 -0
- fortisapi/models/saved_account.py +1408 -0
- fortisapi/models/scheme_id_enum.py +54 -0
- fortisapi/models/sec_code_enum.py +51 -0
- fortisapi/models/settings.py +148 -0
- fortisapi/models/settled_currency_enum.py +168 -0
- fortisapi/models/severity_enum.py +62 -0
- fortisapi/models/ship_address_usage_ind_enum.py +62 -0
- fortisapi/models/ship_indicator_enum.py +101 -0
- fortisapi/models/ship_name_indicator_enum.py +52 -0
- fortisapi/models/shipping_address.py +264 -0
- fortisapi/models/signature.py +220 -0
- fortisapi/models/sms_blacklist.py +178 -0
- fortisapi/models/sms_enum.py +47 -0
- fortisapi/models/sort.py +132 -0
- fortisapi/models/source_enum.py +56 -0
- fortisapi/models/stack_enum.py +47 -0
- fortisapi/models/status_11.py +131 -0
- fortisapi/models/status_3_enum.py +47 -0
- fortisapi/models/status_5.py +102 -0
- fortisapi/models/status_code_12_enum.py +47 -0
- fortisapi/models/status_code_17_enum.py +102 -0
- fortisapi/models/status_code_enum.py +50 -0
- fortisapi/models/status_enum.py +50 -0
- fortisapi/models/status_id_enum.py +47 -0
- fortisapi/models/surcharge.py +574 -0
- fortisapi/models/surcharge_transaction.py +367 -0
- fortisapi/models/suspicious_acc_activity_enum.py +52 -0
- fortisapi/models/tag.py +194 -0
- fortisapi/models/tag_transaction.py +319 -0
- fortisapi/models/tax_exempt_enum.py +61 -0
- fortisapi/models/tax_surcharge_config_enum.py +47 -0
- fortisapi/models/terminal.py +1245 -0
- fortisapi/models/terminal_2.py +1243 -0
- fortisapi/models/terminal_application.py +411 -0
- fortisapi/models/terminal_cvm.py +293 -0
- fortisapi/models/terminal_manufacturer.py +249 -0
- fortisapi/models/terminal_manufacturer_code_enum.py +55 -0
- fortisapi/models/terminal_router.py +245 -0
- fortisapi/models/terminal_timeouts.py +304 -0
- fortisapi/models/terminal_timeouts_12.py +314 -0
- fortisapi/models/three_ds_req_auth_method_enum.py +154 -0
- fortisapi/models/three_ds_req_prior_auth_method_enum.py +123 -0
- fortisapi/models/three_ds_requestor.py +345 -0
- fortisapi/models/three_ds_requestor_authentication_ind_enum.py +141 -0
- fortisapi/models/three_ds_requestor_authentication_info.py +179 -0
- fortisapi/models/three_ds_requestor_challenge_ind_enum.py +126 -0
- fortisapi/models/three_ds_requestor_dec_req_ind_enum.py +72 -0
- fortisapi/models/three_ds_requestor_prior_authentication_info.py +188 -0
- fortisapi/models/three_ds_requestor_spc_support_enum.py +49 -0
- fortisapi/models/three_ri_ind_enum.py +180 -0
- fortisapi/models/tip_percents.py +160 -0
- fortisapi/models/trans_char_enum.py +45 -0
- fortisapi/models/transaction.py +3196 -0
- fortisapi/models/transaction_batch.py +537 -0
- fortisapi/models/transaction_batch_settlement.py +202 -0
- fortisapi/models/transaction_history.py +246 -0
- fortisapi/models/transaction_level_3.py +152 -0
- fortisapi/models/transaction_reference.py +298 -0
- fortisapi/models/transaction_split.py +221 -0
- fortisapi/models/transaction_status_enum.py +88 -0
- fortisapi/models/transaction_type_enum.py +68 -0
- fortisapi/models/trx_source_code_enum.py +155 -0
- fortisapi/models/trx_source_id_enum.py +155 -0
- fortisapi/models/type_103_enum.py +44 -0
- fortisapi/models/type_105_enum.py +44 -0
- fortisapi/models/type_10_enum.py +44 -0
- fortisapi/models/type_110_enum.py +44 -0
- fortisapi/models/type_114_enum.py +44 -0
- fortisapi/models/type_11_enum.py +44 -0
- fortisapi/models/type_121_enum.py +44 -0
- fortisapi/models/type_123.py +131 -0
- fortisapi/models/type_124_enum.py +44 -0
- fortisapi/models/type_125_enum.py +44 -0
- fortisapi/models/type_126_enum.py +44 -0
- fortisapi/models/type_127_enum.py +44 -0
- fortisapi/models/type_128_enum.py +44 -0
- fortisapi/models/type_134_enum.py +44 -0
- fortisapi/models/type_135_enum.py +44 -0
- fortisapi/models/type_136_enum.py +44 -0
- fortisapi/models/type_15_enum.py +44 -0
- fortisapi/models/type_16_enum.py +44 -0
- fortisapi/models/type_1_enum.py +44 -0
- fortisapi/models/type_20_enum.py +44 -0
- fortisapi/models/type_21_enum.py +44 -0
- fortisapi/models/type_22_enum.py +44 -0
- fortisapi/models/type_23_enum.py +44 -0
- fortisapi/models/type_27_enum.py +44 -0
- fortisapi/models/type_28_enum.py +44 -0
- fortisapi/models/type_29_enum.py +64 -0
- fortisapi/models/type_2_enum.py +44 -0
- fortisapi/models/type_30_enum.py +44 -0
- fortisapi/models/type_31_enum.py +44 -0
- fortisapi/models/type_35_enum.py +44 -0
- fortisapi/models/type_39_enum.py +44 -0
- fortisapi/models/type_3_enum.py +44 -0
- fortisapi/models/type_43_enum.py +44 -0
- fortisapi/models/type_44_enum.py +44 -0
- fortisapi/models/type_45_enum.py +44 -0
- fortisapi/models/type_46_enum.py +44 -0
- fortisapi/models/type_47_enum.py +44 -0
- fortisapi/models/type_48_enum.py +44 -0
- fortisapi/models/type_4_enum.py +44 -0
- fortisapi/models/type_52_enum.py +44 -0
- fortisapi/models/type_53_enum.py +44 -0
- fortisapi/models/type_54_enum.py +44 -0
- fortisapi/models/type_55_enum.py +44 -0
- fortisapi/models/type_59_enum.py +44 -0
- fortisapi/models/type_5_enum.py +44 -0
- fortisapi/models/type_60_enum.py +44 -0
- fortisapi/models/type_61_enum.py +45 -0
- fortisapi/models/type_62_enum.py +44 -0
- fortisapi/models/type_63_enum.py +91 -0
- fortisapi/models/type_64_enum.py +44 -0
- fortisapi/models/type_65_enum.py +44 -0
- fortisapi/models/type_6_enum.py +44 -0
- fortisapi/models/type_70_enum.py +44 -0
- fortisapi/models/type_71_enum.py +44 -0
- fortisapi/models/type_75_enum.py +44 -0
- fortisapi/models/type_79_enum.py +44 -0
- fortisapi/models/type_83_enum.py +44 -0
- fortisapi/models/type_84_enum.py +44 -0
- fortisapi/models/type_88_enum.py +44 -0
- fortisapi/models/type_89_enum.py +44 -0
- fortisapi/models/type_93_enum.py +44 -0
- fortisapi/models/type_94_enum.py +44 -0
- fortisapi/models/type_98_enum.py +44 -0
- fortisapi/models/type_99_enum.py +44 -0
- fortisapi/models/type_enum.py +44 -0
- fortisapi/models/type_id_enum.py +59 -0
- fortisapi/models/ui_prefs.py +204 -0
- fortisapi/models/update_if_exists_enum.py +44 -0
- fortisapi/models/user.py +180 -0
- fortisapi/models/user_1.py +1197 -0
- fortisapi/models/user_9.py +1195 -0
- fortisapi/models/user_type_code_enum.py +74 -0
- fortisapi/models/v_1_contacts_request.py +685 -0
- fortisapi/models/v_1_contacts_request_1.py +707 -0
- fortisapi/models/v_1_declined_recurring_transaction_payments_request.py +354 -0
- fortisapi/models/v_1_device_terms_request.py +161 -0
- fortisapi/models/v_1_elements_ticket_intention_request.py +195 -0
- fortisapi/models/v_1_elements_transaction_intention_request.py +591 -0
- fortisapi/models/v_1_fullboarding_request.py +827 -0
- fortisapi/models/v_1_merchant_threedsecure_authentication_request.py +696 -0
- fortisapi/models/v_1_onboarding_request.py +833 -0
- fortisapi/models/v_1_paylinks_request.py +723 -0
- fortisapi/models/v_1_paylinks_request_1.py +735 -0
- fortisapi/models/v_1_public_calculate_surcharge_request.py +527 -0
- fortisapi/models/v_1_quick_invoices_request.py +1035 -0
- fortisapi/models/v_1_quick_invoices_request_1.py +1070 -0
- fortisapi/models/v_1_quick_invoices_transaction_request.py +86 -0
- fortisapi/models/v_1_recurrings_defer_payment_request.py +86 -0
- fortisapi/models/v_1_recurrings_request.py +742 -0
- fortisapi/models/v_1_recurrings_request_1.py +750 -0
- fortisapi/models/v_1_recurrings_skip_payment_request.py +86 -0
- fortisapi/models/v_1_signatures_request.py +113 -0
- fortisapi/models/v_1_tags_request.py +99 -0
- fortisapi/models/v_1_tags_request_1.py +130 -0
- fortisapi/models/v_1_terminals_request.py +1005 -0
- fortisapi/models/v_1_terminals_request_1.py +1112 -0
- fortisapi/models/v_1_tickets_request.py +286 -0
- fortisapi/models/v_1_tokens_ach_request.py +945 -0
- fortisapi/models/v_1_tokens_ach_request_1.py +907 -0
- fortisapi/models/v_1_tokens_cc_request.py +1071 -0
- fortisapi/models/v_1_tokens_cc_request_1.py +905 -0
- fortisapi/models/v_1_tokens_previous_transaction_request.py +858 -0
- fortisapi/models/v_1_tokens_terminal_async_request.py +889 -0
- fortisapi/models/v_1_tokens_terminal_request.py +889 -0
- fortisapi/models/v_1_tokens_ticket_request.py +882 -0
- fortisapi/models/v_1_tokens_wallet_request.py +919 -0
- fortisapi/models/v_1_transaction_ach_retries_request.py +119 -0
- fortisapi/models/v_1_transactions_ach_credit_keyed_request.py +1600 -0
- fortisapi/models/v_1_transactions_ach_credit_prev_trxn_request.py +1616 -0
- fortisapi/models/v_1_transactions_ach_credit_token_request.py +1660 -0
- fortisapi/models/v_1_transactions_ach_debit_keyed_request.py +1600 -0
- fortisapi/models/v_1_transactions_ach_debit_prev_trxn_request.py +1616 -0
- fortisapi/models/v_1_transactions_ach_debit_token_request.py +1660 -0
- fortisapi/models/v_1_transactions_ach_refund_prev_trxn_request.py +1616 -0
- fortisapi/models/v_1_transactions_auth_complete_request.py +1519 -0
- fortisapi/models/v_1_transactions_auth_increment_request.py +1533 -0
- fortisapi/models/v_1_transactions_cash_refund_request.py +1515 -0
- fortisapi/models/v_1_transactions_cash_sale_request.py +1489 -0
- fortisapi/models/v_1_transactions_cc_auth_only_keyed_request.py +2164 -0
- fortisapi/models/v_1_transactions_cc_auth_only_prev_trxn_request.py +2124 -0
- fortisapi/models/v_1_transactions_cc_auth_only_taptopay_request.py +1843 -0
- fortisapi/models/v_1_transactions_cc_auth_only_terminal_request.py +2082 -0
- fortisapi/models/v_1_transactions_cc_auth_only_ticket_request.py +2050 -0
- fortisapi/models/v_1_transactions_cc_auth_only_token_request.py +2129 -0
- fortisapi/models/v_1_transactions_cc_auth_only_wallet_request.py +2062 -0
- fortisapi/models/v_1_transactions_cc_avs_only_keyed_request.py +2175 -0
- fortisapi/models/v_1_transactions_cc_avs_only_prev_trxn_request.py +2124 -0
- fortisapi/models/v_1_transactions_cc_avs_only_swiped_request.py +2086 -0
- fortisapi/models/v_1_transactions_cc_avs_only_terminal_request.py +2093 -0
- fortisapi/models/v_1_transactions_cc_avs_only_ticket_request.py +2061 -0
- fortisapi/models/v_1_transactions_cc_avs_only_token_request.py +2140 -0
- fortisapi/models/v_1_transactions_cc_avs_only_wallet_request.py +2073 -0
- fortisapi/models/v_1_transactions_cc_balance_inquiry_keyed_request.py +2176 -0
- fortisapi/models/v_1_transactions_cc_balance_inquiry_prev_trxn_request.py +2125 -0
- fortisapi/models/v_1_transactions_cc_balance_inquiry_swiped_request.py +2087 -0
- fortisapi/models/v_1_transactions_cc_balance_inquiry_terminal_request.py +2094 -0
- fortisapi/models/v_1_transactions_cc_balance_inquiry_ticket_request.py +2062 -0
- fortisapi/models/v_1_transactions_cc_balance_inquiry_token_request.py +2141 -0
- fortisapi/models/v_1_transactions_cc_balance_inquiry_wallet_request.py +2074 -0
- fortisapi/models/v_1_transactions_cc_refund_keyed_request.py +2218 -0
- fortisapi/models/v_1_transactions_cc_refund_prev_trxn_request.py +2124 -0
- fortisapi/models/v_1_transactions_cc_refund_taptopay_request.py +1869 -0
- fortisapi/models/v_1_transactions_cc_refund_terminal_request.py +2082 -0
- fortisapi/models/v_1_transactions_cc_refund_ticket_request.py +2050 -0
- fortisapi/models/v_1_transactions_cc_refund_token_request.py +2129 -0
- fortisapi/models/v_1_transactions_cc_refund_wallet_request.py +2062 -0
- fortisapi/models/v_1_transactions_cc_sale_keyed_request.py +2164 -0
- fortisapi/models/v_1_transactions_cc_sale_prev_trxn_request.py +2124 -0
- fortisapi/models/v_1_transactions_cc_sale_taptopay_request.py +1843 -0
- fortisapi/models/v_1_transactions_cc_sale_terminal_request.py +2082 -0
- fortisapi/models/v_1_transactions_cc_sale_ticket_request.py +2050 -0
- fortisapi/models/v_1_transactions_cc_sale_token_request.py +2129 -0
- fortisapi/models/v_1_transactions_cc_sale_wallet_request.py +2062 -0
- fortisapi/models/v_1_transactions_ebt_voucher_clear_refund_keyed_request.py +2190 -0
- fortisapi/models/v_1_transactions_ebt_voucher_clear_sale_keyed_request.py +2190 -0
- fortisapi/models/v_1_transactions_level_3_master_card_request.py +91 -0
- fortisapi/models/v_1_transactions_level_3_visa_request.py +91 -0
- fortisapi/models/v_1_transactions_partial_reversal_request.py +1462 -0
- fortisapi/models/v_1_transactions_refund_request.py +1448 -0
- fortisapi/models/v_1_transactions_tip_adjust_request.py +1973 -0
- fortisapi/models/v_1_transactions_void_request.py +130 -0
- fortisapi/models/v_1_wallet_provider_apple_pay_validate_merchant_request.py +127 -0
- fortisapi/models/v_1_wallet_provider_merchant_details_request.py +87 -0
- fortisapi/models/v_1_webhooks_apm_onboarding_request.py +421 -0
- fortisapi/models/v_1_webhooks_apm_onboarding_request_1.py +494 -0
- fortisapi/models/v_1_webhooks_batch_request.py +410 -0
- fortisapi/models/v_1_webhooks_batch_request_1.py +494 -0
- fortisapi/models/v_1_webhooks_contact_request.py +421 -0
- fortisapi/models/v_1_webhooks_contact_request_1.py +494 -0
- fortisapi/models/v_1_webhooks_transaction_request.py +410 -0
- fortisapi/models/v_1_webhooks_transaction_request_1.py +494 -0
- fortisapi/models/values_4_enum.py +59 -0
- fortisapi/models/values_50_enum.py +59 -0
- fortisapi/models/values_51_enum.py +62 -0
- fortisapi/models/values_58_enum.py +59 -0
- fortisapi/models/values_5_enum.py +59 -0
- fortisapi/models/values_6_enum.py +59 -0
- fortisapi/models/values_7_enum.py +59 -0
- fortisapi/models/values_99_enum.py +45 -0
- fortisapi/models/values_enum.py +51 -0
- fortisapi/models/wallet_provider_enum.py +47 -0
- fortisapi/models/wallet_type_enum.py +86 -0
- fortisapi/models/work_phone.py +130 -0
- fortisapi/utilities/__init__.py +6 -0
- fortisapi/utilities/file_wrapper.py +45 -0
- fortisapi/utilities/union_type_lookup.py +436 -0
|
@@ -0,0 +1,109 @@
|
|
|
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.exceptions.api_exception import (
|
|
9
|
+
APIException,
|
|
10
|
+
)
|
|
11
|
+
from fortisapi.models.meta import Meta
|
|
12
|
+
|
|
13
|
+
|
|
14
|
+
class Response412Exception(APIException):
|
|
15
|
+
def __init__(self, reason, response):
|
|
16
|
+
"""Initialize Response412Exception object.
|
|
17
|
+
|
|
18
|
+
Args:
|
|
19
|
+
reason (string): The reason (or error message) for the Exception
|
|
20
|
+
to be raised.
|
|
21
|
+
response (HttpResponse): The HttpResponse of the API call.
|
|
22
|
+
|
|
23
|
+
"""
|
|
24
|
+
super(Response412Exception, self).__init__(reason, response)
|
|
25
|
+
dictionary = APIHelper.json_deserialize(self.response.text)
|
|
26
|
+
if isinstance(dictionary, dict):
|
|
27
|
+
self.unbox(dictionary)
|
|
28
|
+
|
|
29
|
+
def unbox(self, dictionary):
|
|
30
|
+
"""Populate the properties of this object by extracting them from a dictionary.
|
|
31
|
+
|
|
32
|
+
Args:
|
|
33
|
+
dictionary (dictionary): A dictionary representation of the object as
|
|
34
|
+
obtained from the deserialization of the server's response. The keys
|
|
35
|
+
MUST match property names in the API description.
|
|
36
|
+
|
|
37
|
+
"""
|
|
38
|
+
self.mtype =\
|
|
39
|
+
dictionary.get("type")\
|
|
40
|
+
if dictionary.get("type")\
|
|
41
|
+
else None
|
|
42
|
+
self.id =\
|
|
43
|
+
dictionary.get("id")\
|
|
44
|
+
if dictionary.get("id")\
|
|
45
|
+
else None
|
|
46
|
+
self.status_code =\
|
|
47
|
+
dictionary.get("statusCode")\
|
|
48
|
+
if dictionary.get("statusCode")\
|
|
49
|
+
else None
|
|
50
|
+
self.title =\
|
|
51
|
+
dictionary.get("title")\
|
|
52
|
+
if dictionary.get("title")\
|
|
53
|
+
else None
|
|
54
|
+
self.detail =\
|
|
55
|
+
dictionary.get("detail")\
|
|
56
|
+
if dictionary.get("detail")\
|
|
57
|
+
else None
|
|
58
|
+
self.meta =\
|
|
59
|
+
Meta.from_dictionary(
|
|
60
|
+
dictionary.get("meta"))\
|
|
61
|
+
if "meta" in dictionary.keys()\
|
|
62
|
+
else None
|
|
63
|
+
|
|
64
|
+
|
|
65
|
+
def __str__(self):
|
|
66
|
+
"""Return a human-readable string representation."""
|
|
67
|
+
_mtype=(
|
|
68
|
+
self.mtype
|
|
69
|
+
if hasattr(self, "mtype")
|
|
70
|
+
else None
|
|
71
|
+
)
|
|
72
|
+
_id=(
|
|
73
|
+
self.id
|
|
74
|
+
if hasattr(self, "id")
|
|
75
|
+
else None
|
|
76
|
+
)
|
|
77
|
+
_status_code=(
|
|
78
|
+
self.status_code
|
|
79
|
+
if hasattr(self, "status_code")
|
|
80
|
+
else None
|
|
81
|
+
)
|
|
82
|
+
_title=(
|
|
83
|
+
self.title
|
|
84
|
+
if hasattr(self, "title")
|
|
85
|
+
else None
|
|
86
|
+
)
|
|
87
|
+
_detail=(
|
|
88
|
+
self.detail
|
|
89
|
+
if hasattr(self, "detail")
|
|
90
|
+
else None
|
|
91
|
+
)
|
|
92
|
+
_meta=(
|
|
93
|
+
self.meta
|
|
94
|
+
if hasattr(self, "meta")
|
|
95
|
+
else None
|
|
96
|
+
)
|
|
97
|
+
_base_str = super().__str__()
|
|
98
|
+
_base_str = _base_str[_base_str.find("(") + 1:-1]
|
|
99
|
+
return (
|
|
100
|
+
f"{self.__class__.__name__}("
|
|
101
|
+
f"base_str={_base_str!s}, "
|
|
102
|
+
f"mtype={_mtype!s}, "
|
|
103
|
+
f"id={_id!s}, "
|
|
104
|
+
f"status_code={_status_code!s}, "
|
|
105
|
+
f"title={_title!s}, "
|
|
106
|
+
f"detail={_detail!s}, "
|
|
107
|
+
f"meta={_meta!s}, "
|
|
108
|
+
f")"
|
|
109
|
+
)
|
|
@@ -0,0 +1,109 @@
|
|
|
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.exceptions.api_exception import (
|
|
9
|
+
APIException,
|
|
10
|
+
)
|
|
11
|
+
from fortisapi.models.detail_1 import Detail1
|
|
12
|
+
|
|
13
|
+
|
|
14
|
+
class ResponseErrorException(APIException):
|
|
15
|
+
def __init__(self, reason, response):
|
|
16
|
+
"""Initialize ResponseErrorException object.
|
|
17
|
+
|
|
18
|
+
Args:
|
|
19
|
+
reason (string): The reason (or error message) for the Exception
|
|
20
|
+
to be raised.
|
|
21
|
+
response (HttpResponse): The HttpResponse of the API call.
|
|
22
|
+
|
|
23
|
+
"""
|
|
24
|
+
super(ResponseErrorException, self).__init__(reason, response)
|
|
25
|
+
dictionary = APIHelper.json_deserialize(self.response.text)
|
|
26
|
+
if isinstance(dictionary, dict):
|
|
27
|
+
self.unbox(dictionary)
|
|
28
|
+
|
|
29
|
+
def unbox(self, dictionary):
|
|
30
|
+
"""Populate the properties of this object by extracting them from a dictionary.
|
|
31
|
+
|
|
32
|
+
Args:
|
|
33
|
+
dictionary (dictionary): A dictionary representation of the object as
|
|
34
|
+
obtained from the deserialization of the server's response. The keys
|
|
35
|
+
MUST match property names in the API description.
|
|
36
|
+
|
|
37
|
+
"""
|
|
38
|
+
self.mtype =\
|
|
39
|
+
dictionary.get("type")\
|
|
40
|
+
if dictionary.get("type")\
|
|
41
|
+
else None
|
|
42
|
+
self.id =\
|
|
43
|
+
dictionary.get("id")\
|
|
44
|
+
if dictionary.get("id")\
|
|
45
|
+
else None
|
|
46
|
+
self.status_code =\
|
|
47
|
+
dictionary.get("statusCode")\
|
|
48
|
+
if dictionary.get("statusCode")\
|
|
49
|
+
else None
|
|
50
|
+
self.title =\
|
|
51
|
+
dictionary.get("title")\
|
|
52
|
+
if dictionary.get("title")\
|
|
53
|
+
else None
|
|
54
|
+
self.detail =\
|
|
55
|
+
Detail1.from_dictionary(
|
|
56
|
+
dictionary.get("detail"))\
|
|
57
|
+
if "detail" in dictionary.keys()\
|
|
58
|
+
else None
|
|
59
|
+
self.meta =\
|
|
60
|
+
dictionary.get("meta")\
|
|
61
|
+
if dictionary.get("meta")\
|
|
62
|
+
else None
|
|
63
|
+
|
|
64
|
+
|
|
65
|
+
def __str__(self):
|
|
66
|
+
"""Return a human-readable string representation."""
|
|
67
|
+
_mtype=(
|
|
68
|
+
self.mtype
|
|
69
|
+
if hasattr(self, "mtype")
|
|
70
|
+
else None
|
|
71
|
+
)
|
|
72
|
+
_id=(
|
|
73
|
+
self.id
|
|
74
|
+
if hasattr(self, "id")
|
|
75
|
+
else None
|
|
76
|
+
)
|
|
77
|
+
_status_code=(
|
|
78
|
+
self.status_code
|
|
79
|
+
if hasattr(self, "status_code")
|
|
80
|
+
else None
|
|
81
|
+
)
|
|
82
|
+
_title=(
|
|
83
|
+
self.title
|
|
84
|
+
if hasattr(self, "title")
|
|
85
|
+
else None
|
|
86
|
+
)
|
|
87
|
+
_detail=(
|
|
88
|
+
self.detail
|
|
89
|
+
if hasattr(self, "detail")
|
|
90
|
+
else None
|
|
91
|
+
)
|
|
92
|
+
_meta=(
|
|
93
|
+
self.meta
|
|
94
|
+
if hasattr(self, "meta")
|
|
95
|
+
else None
|
|
96
|
+
)
|
|
97
|
+
_base_str = super().__str__()
|
|
98
|
+
_base_str = _base_str[_base_str.find("(") + 1:-1]
|
|
99
|
+
return (
|
|
100
|
+
f"{self.__class__.__name__}("
|
|
101
|
+
f"base_str={_base_str!s}, "
|
|
102
|
+
f"mtype={_mtype!s}, "
|
|
103
|
+
f"id={_id!s}, "
|
|
104
|
+
f"status_code={_status_code!s}, "
|
|
105
|
+
f"title={_title!s}, "
|
|
106
|
+
f"detail={_detail!s}, "
|
|
107
|
+
f"meta={_meta!s}, "
|
|
108
|
+
f")"
|
|
109
|
+
)
|
|
@@ -0,0 +1,360 @@
|
|
|
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 apimatic_core.configurations.global_configuration import (
|
|
8
|
+
GlobalConfiguration,
|
|
9
|
+
)
|
|
10
|
+
from apimatic_core.decorators.lazy_property import (
|
|
11
|
+
LazyProperty,
|
|
12
|
+
)
|
|
13
|
+
|
|
14
|
+
from fortisapi.configuration import (
|
|
15
|
+
Configuration,
|
|
16
|
+
Environment,
|
|
17
|
+
)
|
|
18
|
+
from fortisapi.controllers.apple_pay_validate_merchant_controller import (
|
|
19
|
+
ApplePayValidateMerchantController,
|
|
20
|
+
)
|
|
21
|
+
from fortisapi.controllers.async_processing_controller import (
|
|
22
|
+
AsyncProcessingController,
|
|
23
|
+
)
|
|
24
|
+
from fortisapi.controllers.base_controller import (
|
|
25
|
+
BaseController,
|
|
26
|
+
)
|
|
27
|
+
from fortisapi.controllers.batches_controller import (
|
|
28
|
+
BatchesController,
|
|
29
|
+
)
|
|
30
|
+
from fortisapi.controllers.calculate_surcharge_controller import (
|
|
31
|
+
CalculateSurchargeController,
|
|
32
|
+
)
|
|
33
|
+
from fortisapi.controllers.contacts_controller import (
|
|
34
|
+
ContactsController,
|
|
35
|
+
)
|
|
36
|
+
from fortisapi.controllers.declined_recurring_transactions_controller import (
|
|
37
|
+
DeclinedRecurringTransactionsController,
|
|
38
|
+
)
|
|
39
|
+
from fortisapi.controllers.device_terms_controller import (
|
|
40
|
+
DeviceTermsController,
|
|
41
|
+
)
|
|
42
|
+
from fortisapi.controllers.elements_controller import (
|
|
43
|
+
ElementsController,
|
|
44
|
+
)
|
|
45
|
+
from fortisapi.controllers.enterprise_link_redirect_controller import (
|
|
46
|
+
EnterpriseLinkRedirectController,
|
|
47
|
+
)
|
|
48
|
+
from fortisapi.controllers.full_boarding_controller import (
|
|
49
|
+
FullBoardingController,
|
|
50
|
+
)
|
|
51
|
+
from fortisapi.controllers.level_3_data_controller import (
|
|
52
|
+
Level3DataController,
|
|
53
|
+
)
|
|
54
|
+
from fortisapi.controllers.locations_controller import (
|
|
55
|
+
LocationsController,
|
|
56
|
+
)
|
|
57
|
+
from fortisapi.controllers.m_3_ds_authentication_controller import (
|
|
58
|
+
M3DSAuthenticationController,
|
|
59
|
+
)
|
|
60
|
+
from fortisapi.controllers.m_3_ds_transactions_controller import (
|
|
61
|
+
M3DSTransactionsController,
|
|
62
|
+
)
|
|
63
|
+
from fortisapi.controllers.merchant_deposits_controller import (
|
|
64
|
+
MerchantDepositsController,
|
|
65
|
+
)
|
|
66
|
+
from fortisapi.controllers.merchant_details_controller import (
|
|
67
|
+
MerchantDetailsController,
|
|
68
|
+
)
|
|
69
|
+
from fortisapi.controllers.on_boarding_controller import (
|
|
70
|
+
OnBoardingController,
|
|
71
|
+
)
|
|
72
|
+
from fortisapi.controllers.paylinks_controller import (
|
|
73
|
+
PaylinksController,
|
|
74
|
+
)
|
|
75
|
+
from fortisapi.controllers.payment_card_reader_token_controller import (
|
|
76
|
+
PaymentCardReaderTokenController,
|
|
77
|
+
)
|
|
78
|
+
from fortisapi.controllers.quick_invoices_controller import (
|
|
79
|
+
QuickInvoicesController,
|
|
80
|
+
)
|
|
81
|
+
from fortisapi.controllers.recurring_controller import (
|
|
82
|
+
RecurringController,
|
|
83
|
+
)
|
|
84
|
+
from fortisapi.controllers.reports_controller import (
|
|
85
|
+
ReportsController,
|
|
86
|
+
)
|
|
87
|
+
from fortisapi.controllers.signatures_controller import (
|
|
88
|
+
SignaturesController,
|
|
89
|
+
)
|
|
90
|
+
from fortisapi.controllers.tags_controller import (
|
|
91
|
+
TagsController,
|
|
92
|
+
)
|
|
93
|
+
from fortisapi.controllers.terminals_controller import (
|
|
94
|
+
TerminalsController,
|
|
95
|
+
)
|
|
96
|
+
from fortisapi.controllers.tickets_controller import (
|
|
97
|
+
TicketsController,
|
|
98
|
+
)
|
|
99
|
+
from fortisapi.controllers.tokens_controller import (
|
|
100
|
+
TokensController,
|
|
101
|
+
)
|
|
102
|
+
from fortisapi.controllers.transaction_ach_retries_controller import (
|
|
103
|
+
TransactionACHRetriesController,
|
|
104
|
+
)
|
|
105
|
+
from fortisapi.controllers.transactions_ach_controller import (
|
|
106
|
+
TransactionsACHController,
|
|
107
|
+
)
|
|
108
|
+
from fortisapi.controllers.transactions_cash_controller import (
|
|
109
|
+
TransactionsCashController,
|
|
110
|
+
)
|
|
111
|
+
from fortisapi.controllers.transactions_credit_card_controller import (
|
|
112
|
+
TransactionsCreditCardController,
|
|
113
|
+
)
|
|
114
|
+
from fortisapi.controllers.transactions_ebt_card_controller import (
|
|
115
|
+
TransactionsEBTCardController,
|
|
116
|
+
)
|
|
117
|
+
from fortisapi.controllers.transactions_read_controller import (
|
|
118
|
+
TransactionsReadController,
|
|
119
|
+
)
|
|
120
|
+
from fortisapi.controllers.transactions_updates_controller import (
|
|
121
|
+
TransactionsUpdatesController,
|
|
122
|
+
)
|
|
123
|
+
from fortisapi.controllers.webhooks_controller import (
|
|
124
|
+
WebhooksController,
|
|
125
|
+
)
|
|
126
|
+
from fortisapi.http.auth.access_token import (
|
|
127
|
+
AccessToken,
|
|
128
|
+
)
|
|
129
|
+
from fortisapi.http.auth.developer_id import (
|
|
130
|
+
DeveloperId,
|
|
131
|
+
)
|
|
132
|
+
from fortisapi.http.auth.user_api_key import (
|
|
133
|
+
UserApiKey,
|
|
134
|
+
)
|
|
135
|
+
from fortisapi.http.auth.user_id import UserId
|
|
136
|
+
|
|
137
|
+
|
|
138
|
+
class FortisapiClient(object):
|
|
139
|
+
"""Client that provide access to the FortisapiClient APIs."""
|
|
140
|
+
|
|
141
|
+
@LazyProperty
|
|
142
|
+
def async_processing(self):
|
|
143
|
+
"""Provide access to the AsyncProcessingController endpoints."""
|
|
144
|
+
return AsyncProcessingController(self.global_configuration)
|
|
145
|
+
|
|
146
|
+
@LazyProperty
|
|
147
|
+
def batches(self):
|
|
148
|
+
"""Provide access to the BatchesController endpoints."""
|
|
149
|
+
return BatchesController(self.global_configuration)
|
|
150
|
+
|
|
151
|
+
@LazyProperty
|
|
152
|
+
def contacts(self):
|
|
153
|
+
"""Provide access to the ContactsController endpoints."""
|
|
154
|
+
return ContactsController(self.global_configuration)
|
|
155
|
+
|
|
156
|
+
@LazyProperty
|
|
157
|
+
def declined_recurring_transactions(self):
|
|
158
|
+
"""Provide access to the DeclinedRecurringTransactionsController endpoints."""
|
|
159
|
+
return DeclinedRecurringTransactionsController(self.global_configuration)
|
|
160
|
+
|
|
161
|
+
@LazyProperty
|
|
162
|
+
def device_terms(self):
|
|
163
|
+
"""Provide access to the DeviceTermsController endpoints."""
|
|
164
|
+
return DeviceTermsController(self.global_configuration)
|
|
165
|
+
|
|
166
|
+
@LazyProperty
|
|
167
|
+
def elements(self):
|
|
168
|
+
"""Provide access to the ElementsController endpoints."""
|
|
169
|
+
return ElementsController(self.global_configuration)
|
|
170
|
+
|
|
171
|
+
@LazyProperty
|
|
172
|
+
def full_boarding(self):
|
|
173
|
+
"""Provide access to the FullBoardingController endpoints."""
|
|
174
|
+
return FullBoardingController(self.global_configuration)
|
|
175
|
+
|
|
176
|
+
@LazyProperty
|
|
177
|
+
def locations(self):
|
|
178
|
+
"""Provide access to the LocationsController endpoints."""
|
|
179
|
+
return LocationsController(self.global_configuration)
|
|
180
|
+
|
|
181
|
+
@LazyProperty
|
|
182
|
+
def m3_ds_authentication(self):
|
|
183
|
+
"""Provide access to the M3DSAuthenticationController endpoints."""
|
|
184
|
+
return M3DSAuthenticationController(self.global_configuration)
|
|
185
|
+
|
|
186
|
+
@LazyProperty
|
|
187
|
+
def m3_ds_transactions(self):
|
|
188
|
+
"""Provide access to the M3DSTransactionsController endpoints."""
|
|
189
|
+
return M3DSTransactionsController(self.global_configuration)
|
|
190
|
+
|
|
191
|
+
@LazyProperty
|
|
192
|
+
def merchant_deposits(self):
|
|
193
|
+
"""Provide access to the MerchantDepositsController endpoints."""
|
|
194
|
+
return MerchantDepositsController(self.global_configuration)
|
|
195
|
+
|
|
196
|
+
@LazyProperty
|
|
197
|
+
def enterprise_link_redirect(self):
|
|
198
|
+
"""Provide access to the EnterpriseLinkRedirectController endpoints."""
|
|
199
|
+
return EnterpriseLinkRedirectController(self.global_configuration)
|
|
200
|
+
|
|
201
|
+
@LazyProperty
|
|
202
|
+
def on_boarding(self):
|
|
203
|
+
"""Provide access to the OnBoardingController endpoints."""
|
|
204
|
+
return OnBoardingController(self.global_configuration)
|
|
205
|
+
|
|
206
|
+
@LazyProperty
|
|
207
|
+
def paylinks(self):
|
|
208
|
+
"""Provide access to the PaylinksController endpoints."""
|
|
209
|
+
return PaylinksController(self.global_configuration)
|
|
210
|
+
|
|
211
|
+
@LazyProperty
|
|
212
|
+
def payment_card_reader_token(self):
|
|
213
|
+
"""Provide access to the PaymentCardReaderTokenController endpoints."""
|
|
214
|
+
return PaymentCardReaderTokenController(self.global_configuration)
|
|
215
|
+
|
|
216
|
+
@LazyProperty
|
|
217
|
+
def calculate_surcharge(self):
|
|
218
|
+
"""Provide access to the CalculateSurchargeController endpoints."""
|
|
219
|
+
return CalculateSurchargeController(self.global_configuration)
|
|
220
|
+
|
|
221
|
+
@LazyProperty
|
|
222
|
+
def quick_invoices(self):
|
|
223
|
+
"""Provide access to the QuickInvoicesController endpoints."""
|
|
224
|
+
return QuickInvoicesController(self.global_configuration)
|
|
225
|
+
|
|
226
|
+
@LazyProperty
|
|
227
|
+
def recurring(self):
|
|
228
|
+
"""Provide access to the RecurringController endpoints."""
|
|
229
|
+
return RecurringController(self.global_configuration)
|
|
230
|
+
|
|
231
|
+
@LazyProperty
|
|
232
|
+
def reports(self):
|
|
233
|
+
"""Provide access to the ReportsController endpoints."""
|
|
234
|
+
return ReportsController(self.global_configuration)
|
|
235
|
+
|
|
236
|
+
@LazyProperty
|
|
237
|
+
def signatures(self):
|
|
238
|
+
"""Provide access to the SignaturesController endpoints."""
|
|
239
|
+
return SignaturesController(self.global_configuration)
|
|
240
|
+
|
|
241
|
+
@LazyProperty
|
|
242
|
+
def tags(self):
|
|
243
|
+
"""Provide access to the TagsController endpoints."""
|
|
244
|
+
return TagsController(self.global_configuration)
|
|
245
|
+
|
|
246
|
+
@LazyProperty
|
|
247
|
+
def terminals(self):
|
|
248
|
+
"""Provide access to the TerminalsController endpoints."""
|
|
249
|
+
return TerminalsController(self.global_configuration)
|
|
250
|
+
|
|
251
|
+
@LazyProperty
|
|
252
|
+
def tickets(self):
|
|
253
|
+
"""Provide access to the TicketsController endpoints."""
|
|
254
|
+
return TicketsController(self.global_configuration)
|
|
255
|
+
|
|
256
|
+
@LazyProperty
|
|
257
|
+
def tokens(self):
|
|
258
|
+
"""Provide access to the TokensController endpoints."""
|
|
259
|
+
return TokensController(self.global_configuration)
|
|
260
|
+
|
|
261
|
+
@LazyProperty
|
|
262
|
+
def transaction_ach_retries(self):
|
|
263
|
+
"""Provide access to the TransactionACHRetriesController endpoints."""
|
|
264
|
+
return TransactionACHRetriesController(self.global_configuration)
|
|
265
|
+
|
|
266
|
+
@LazyProperty
|
|
267
|
+
def transactions_ach(self):
|
|
268
|
+
"""Provide access to the TransactionsACHController endpoints."""
|
|
269
|
+
return TransactionsACHController(self.global_configuration)
|
|
270
|
+
|
|
271
|
+
@LazyProperty
|
|
272
|
+
def transactions_cash(self):
|
|
273
|
+
"""Provide access to the TransactionsCashController endpoints."""
|
|
274
|
+
return TransactionsCashController(self.global_configuration)
|
|
275
|
+
|
|
276
|
+
@LazyProperty
|
|
277
|
+
def transactions_credit_card(self):
|
|
278
|
+
"""Provide access to the TransactionsCreditCardController endpoints."""
|
|
279
|
+
return TransactionsCreditCardController(self.global_configuration)
|
|
280
|
+
|
|
281
|
+
@LazyProperty
|
|
282
|
+
def transactions_ebt_card(self):
|
|
283
|
+
"""Provide access to the TransactionsEBTCardController endpoints."""
|
|
284
|
+
return TransactionsEBTCardController(self.global_configuration)
|
|
285
|
+
|
|
286
|
+
@LazyProperty
|
|
287
|
+
def transactions_read(self):
|
|
288
|
+
"""Provide access to the TransactionsReadController endpoints."""
|
|
289
|
+
return TransactionsReadController(self.global_configuration)
|
|
290
|
+
|
|
291
|
+
@LazyProperty
|
|
292
|
+
def level_3_data(self):
|
|
293
|
+
"""Provide access to the Level3DataController endpoints."""
|
|
294
|
+
return Level3DataController(self.global_configuration)
|
|
295
|
+
|
|
296
|
+
@LazyProperty
|
|
297
|
+
def transactions_updates(self):
|
|
298
|
+
"""Provide access to the TransactionsUpdatesController endpoints."""
|
|
299
|
+
return TransactionsUpdatesController(self.global_configuration)
|
|
300
|
+
|
|
301
|
+
@LazyProperty
|
|
302
|
+
def apple_pay_validate_merchant(self):
|
|
303
|
+
"""Provide access to the ApplePayValidateMerchantController endpoints."""
|
|
304
|
+
return ApplePayValidateMerchantController(self.global_configuration)
|
|
305
|
+
|
|
306
|
+
@LazyProperty
|
|
307
|
+
def merchant_details(self):
|
|
308
|
+
"""Provide access to the MerchantDetailsController endpoints."""
|
|
309
|
+
return MerchantDetailsController(self.global_configuration)
|
|
310
|
+
|
|
311
|
+
@LazyProperty
|
|
312
|
+
def webhooks(self):
|
|
313
|
+
"""Provide access to the WebhooksController endpoints."""
|
|
314
|
+
return WebhooksController(self.global_configuration)
|
|
315
|
+
|
|
316
|
+
def __init__(self, http_client_instance=None,
|
|
317
|
+
override_http_client_configuration=False, http_call_back=None,
|
|
318
|
+
timeout=60, max_retries=0, backoff_factor=2,
|
|
319
|
+
retry_statuses=None, retry_methods=None, proxy_settings=None,
|
|
320
|
+
environment=Environment.SANDBOX, user_id_credentials=None,
|
|
321
|
+
user_api_key_credentials=None, developer_id_credentials=None,
|
|
322
|
+
access_token_credentials=None, config=None):
|
|
323
|
+
"""Initialize a new instance of FortisapiClient."""
|
|
324
|
+
self.config = config or Configuration(
|
|
325
|
+
http_client_instance=http_client_instance,
|
|
326
|
+
override_http_client_configuration=override_http_client_configuration,
|
|
327
|
+
http_call_back=http_call_back, timeout=timeout,
|
|
328
|
+
max_retries=max_retries, backoff_factor=backoff_factor,
|
|
329
|
+
retry_statuses=retry_statuses, retry_methods=retry_methods,
|
|
330
|
+
proxy_settings=proxy_settings, environment=environment,
|
|
331
|
+
user_id_credentials=user_id_credentials,
|
|
332
|
+
user_api_key_credentials=user_api_key_credentials,
|
|
333
|
+
developer_id_credentials=developer_id_credentials,
|
|
334
|
+
access_token_credentials=access_token_credentials)
|
|
335
|
+
|
|
336
|
+
self.global_configuration = GlobalConfiguration(self.config)\
|
|
337
|
+
.global_errors(BaseController.global_errors())\
|
|
338
|
+
.base_uri_executor(self.config.get_base_uri)\
|
|
339
|
+
.user_agent(BaseController.user_agent(),
|
|
340
|
+
BaseController.user_agent_parameters())
|
|
341
|
+
|
|
342
|
+
self.auth_managers = {
|
|
343
|
+
"user-id": UserId(self.config.user_id_credentials),
|
|
344
|
+
"user-api-key": UserApiKey(self.config.user_api_key_credentials),
|
|
345
|
+
"developer-id": DeveloperId(self.config.developer_id_credentials),
|
|
346
|
+
"access-token": AccessToken(self.config.access_token_credentials),
|
|
347
|
+
}
|
|
348
|
+
self.global_configuration =\
|
|
349
|
+
self.global_configuration.auth_managers(self.auth_managers)
|
|
350
|
+
|
|
351
|
+
@classmethod
|
|
352
|
+
def from_environment(cls, dotenv_path=None, **overrides):
|
|
353
|
+
"""Create a client instance using environment variables.
|
|
354
|
+
|
|
355
|
+
Returns:
|
|
356
|
+
FortisapiClient instance.
|
|
357
|
+
|
|
358
|
+
"""
|
|
359
|
+
return cls(config=Configuration
|
|
360
|
+
.from_environment(dotenv_path=dotenv_path, **overrides))
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
# ruff: noqa: D104 | Missing docstring in public package
|
|
2
|
+
# ruff: noqa: RUF022 | `__all__` is not sorted
|
|
3
|
+
__all__ = [
|
|
4
|
+
"auth",
|
|
5
|
+
"http_call_back",
|
|
6
|
+
"http_client_provider",
|
|
7
|
+
"http_method_enum",
|
|
8
|
+
"http_request",
|
|
9
|
+
"http_response",
|
|
10
|
+
"proxy_settings",
|
|
11
|
+
]
|
|
@@ -0,0 +1,100 @@
|
|
|
1
|
+
|
|
2
|
+
"""
|
|
3
|
+
fortisapi
|
|
4
|
+
|
|
5
|
+
This file was automatically generated by APIMATIC v3.0 (
|
|
6
|
+
https://www.apimatic.io ).
|
|
7
|
+
"""
|
|
8
|
+
|
|
9
|
+
import os
|
|
10
|
+
|
|
11
|
+
from apimatic_core.authentication.header_auth import HeaderAuth
|
|
12
|
+
|
|
13
|
+
|
|
14
|
+
class AccessToken(HeaderAuth):
|
|
15
|
+
"""
|
|
16
|
+
An authentication handler that applies `CustomHeaderAuthentication` to
|
|
17
|
+
outgoing requests. It constructs the required credential values and integrates
|
|
18
|
+
with the core authentication framework.
|
|
19
|
+
"""
|
|
20
|
+
|
|
21
|
+
@property
|
|
22
|
+
def error_message(self):
|
|
23
|
+
"""Return reason about the authentication failure."""
|
|
24
|
+
return "AccessToken: access_token is undefined."
|
|
25
|
+
|
|
26
|
+
def __init__(self, auth_model):
|
|
27
|
+
"""
|
|
28
|
+
Initialize the authentication handler with credential data.
|
|
29
|
+
|
|
30
|
+
Args:
|
|
31
|
+
auth_model: The credentials object used to generate the authorization
|
|
32
|
+
header.
|
|
33
|
+
|
|
34
|
+
"""
|
|
35
|
+
auth_params = {}
|
|
36
|
+
if auth_model is not None \
|
|
37
|
+
and auth_model.access_token is not None:
|
|
38
|
+
auth_params["access-token"] = auth_model.access_token
|
|
39
|
+
super().__init__(auth_params=auth_params)
|
|
40
|
+
|
|
41
|
+
|
|
42
|
+
class AccessTokenCredentials:
|
|
43
|
+
"""
|
|
44
|
+
A model for authentication credentials. Provides simple validation,
|
|
45
|
+
cloning support, and optional construction from environment variables.
|
|
46
|
+
Suitable as a pattern for other auth models.
|
|
47
|
+
"""
|
|
48
|
+
|
|
49
|
+
@property
|
|
50
|
+
def access_token(self):
|
|
51
|
+
"""
|
|
52
|
+
Access Token.
|
|
53
|
+
"""
|
|
54
|
+
return self._access_token
|
|
55
|
+
|
|
56
|
+
def __init__(self, access_token):
|
|
57
|
+
"""
|
|
58
|
+
Initialize the credentials.
|
|
59
|
+
|
|
60
|
+
Args:
|
|
61
|
+
access_token: The access_token property value to set.
|
|
62
|
+
|
|
63
|
+
Raises:
|
|
64
|
+
ValueError: If any required value is missing.
|
|
65
|
+
|
|
66
|
+
"""
|
|
67
|
+
if access_token is None:
|
|
68
|
+
raise ValueError("access_token cannot be None")
|
|
69
|
+
self._access_token = access_token
|
|
70
|
+
|
|
71
|
+
def clone_with(self, access_token=None):
|
|
72
|
+
"""
|
|
73
|
+
Return a new instance with optional value overrides.
|
|
74
|
+
|
|
75
|
+
Args:
|
|
76
|
+
access_token: The access_token property value to set.
|
|
77
|
+
|
|
78
|
+
"""
|
|
79
|
+
return AccessTokenCredentials(access_token or self.access_token)
|
|
80
|
+
|
|
81
|
+
@classmethod
|
|
82
|
+
def from_environment(cls):
|
|
83
|
+
"""
|
|
84
|
+
Create credentials from environment variables, if available.
|
|
85
|
+
|
|
86
|
+
Returns:
|
|
87
|
+
A credentials instance or ``None`` if values are missing.
|
|
88
|
+
|
|
89
|
+
"""
|
|
90
|
+
access_token = os.getenv(
|
|
91
|
+
"ACCESS_TOKEN_ACCESS_TOKEN",
|
|
92
|
+
None,
|
|
93
|
+
)
|
|
94
|
+
|
|
95
|
+
if (access_token is None):
|
|
96
|
+
return None
|
|
97
|
+
|
|
98
|
+
return cls(
|
|
99
|
+
access_token=access_token,
|
|
100
|
+
)
|