mergepythonclient 2.1.1__py3-none-any.whl → 2.3.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.
- merge/__init__.py +40 -4
- merge/client.py +118 -18
- merge/core/__init__.py +75 -21
- merge/core/client_wrapper.py +2 -2
- merge/core/force_multipart.py +4 -2
- merge/core/http_response.py +1 -1
- merge/core/unchecked_base_model.py +3 -3
- merge/resources/__init__.py +33 -1
- merge/resources/accounting/__init__.py +1242 -607
- merge/resources/accounting/client.py +835 -165
- merge/resources/accounting/resources/__init__.py +208 -92
- merge/resources/accounting/resources/accounting_periods/client.py +6 -2
- merge/resources/accounting/resources/accounts/__init__.py +36 -6
- merge/resources/accounting/resources/accounts/client.py +6 -2
- merge/resources/accounting/resources/accounts/types/__init__.py +34 -4
- merge/resources/accounting/resources/async_passthrough/__init__.py +26 -1
- merge/resources/accounting/resources/async_passthrough/types/__init__.py +26 -1
- merge/resources/accounting/resources/attachments/client.py +6 -2
- merge/resources/accounting/resources/audit_trail/client.py +6 -2
- merge/resources/accounting/resources/balance_sheets/client.py +6 -2
- merge/resources/accounting/resources/bank_feed_accounts/client.py +6 -2
- merge/resources/accounting/resources/bank_feed_transactions/client.py +6 -2
- merge/resources/accounting/resources/cash_flow_statements/client.py +6 -2
- merge/resources/accounting/resources/company_info/__init__.py +29 -1
- merge/resources/accounting/resources/company_info/client.py +6 -2
- merge/resources/accounting/resources/company_info/types/__init__.py +30 -2
- merge/resources/accounting/resources/contacts/__init__.py +29 -1
- merge/resources/accounting/resources/contacts/client.py +195 -4
- merge/resources/accounting/resources/contacts/raw_client.py +203 -0
- merge/resources/accounting/resources/contacts/types/__init__.py +30 -2
- merge/resources/accounting/resources/credit_notes/__init__.py +40 -8
- merge/resources/accounting/resources/credit_notes/client.py +6 -2
- merge/resources/accounting/resources/credit_notes/types/__init__.py +38 -6
- merge/resources/accounting/resources/employees/client.py +6 -2
- merge/resources/accounting/resources/expense_reports/__init__.py +34 -5
- merge/resources/accounting/resources/expense_reports/client.py +20 -6
- merge/resources/accounting/resources/expense_reports/types/__init__.py +32 -3
- merge/resources/accounting/resources/expenses/__init__.py +29 -1
- merge/resources/accounting/resources/expenses/client.py +18 -6
- merge/resources/accounting/resources/expenses/types/__init__.py +30 -2
- merge/resources/accounting/resources/general_ledger_transactions/__init__.py +29 -1
- merge/resources/accounting/resources/general_ledger_transactions/client.py +6 -2
- merge/resources/accounting/resources/general_ledger_transactions/types/__init__.py +30 -2
- merge/resources/accounting/resources/income_statements/client.py +6 -2
- merge/resources/accounting/resources/invoices/__init__.py +36 -6
- merge/resources/accounting/resources/invoices/client.py +18 -6
- merge/resources/accounting/resources/invoices/types/__init__.py +34 -4
- merge/resources/accounting/resources/issues/__init__.py +26 -1
- merge/resources/accounting/resources/issues/client.py +6 -2
- merge/resources/accounting/resources/issues/types/__init__.py +26 -1
- merge/resources/accounting/resources/items/__init__.py +26 -1
- merge/resources/accounting/resources/items/client.py +6 -2
- merge/resources/accounting/resources/items/types/__init__.py +30 -2
- merge/resources/accounting/resources/journal_entries/__init__.py +29 -1
- merge/resources/accounting/resources/journal_entries/client.py +18 -6
- merge/resources/accounting/resources/journal_entries/types/__init__.py +30 -2
- merge/resources/accounting/resources/link_token/__init__.py +26 -1
- merge/resources/accounting/resources/link_token/types/__init__.py +26 -1
- merge/resources/accounting/resources/linked_accounts/__init__.py +26 -1
- merge/resources/accounting/resources/linked_accounts/client.py +6 -2
- merge/resources/accounting/resources/linked_accounts/types/__init__.py +28 -1
- merge/resources/accounting/resources/payment_methods/client.py +6 -2
- merge/resources/accounting/resources/payment_terms/client.py +6 -2
- merge/resources/accounting/resources/payments/__init__.py +29 -1
- merge/resources/accounting/resources/payments/client.py +18 -6
- merge/resources/accounting/resources/payments/types/__init__.py +30 -2
- merge/resources/accounting/resources/projects/__init__.py +29 -1
- merge/resources/accounting/resources/projects/client.py +6 -2
- merge/resources/accounting/resources/projects/types/__init__.py +30 -2
- merge/resources/accounting/resources/purchase_orders/__init__.py +29 -1
- merge/resources/accounting/resources/purchase_orders/client.py +18 -6
- merge/resources/accounting/resources/purchase_orders/types/__init__.py +30 -2
- merge/resources/accounting/resources/sync_status/client.py +6 -2
- merge/resources/accounting/resources/tax_rates/client.py +6 -2
- merge/resources/accounting/resources/tracking_categories/client.py +6 -2
- merge/resources/accounting/resources/transactions/__init__.py +29 -1
- merge/resources/accounting/resources/transactions/client.py +6 -2
- merge/resources/accounting/resources/transactions/types/__init__.py +30 -2
- merge/resources/accounting/resources/transactions/types/transactions_list_request_expand.py +141 -0
- merge/resources/accounting/resources/transactions/types/transactions_retrieve_request_expand.py +141 -0
- merge/resources/accounting/resources/vendor_credits/__init__.py +29 -1
- merge/resources/accounting/resources/vendor_credits/client.py +6 -2
- merge/resources/accounting/resources/vendor_credits/types/__init__.py +30 -2
- merge/resources/accounting/types/__init__.py +1070 -519
- merge/resources/accounting/types/patched_contact_request.py +91 -0
- merge/resources/accounting/types/patched_contact_request_addresses_item.py +7 -0
- merge/resources/accounting/types/remote_field_class.py +1 -0
- merge/resources/ats/__init__.py +586 -282
- merge/resources/ats/client.py +590 -120
- merge/resources/ats/resources/__init__.py +150 -63
- merge/resources/ats/resources/activities/__init__.py +36 -6
- merge/resources/ats/resources/activities/client.py +6 -2
- merge/resources/ats/resources/activities/types/__init__.py +34 -4
- merge/resources/ats/resources/applications/__init__.py +29 -1
- merge/resources/ats/resources/applications/client.py +6 -2
- merge/resources/ats/resources/applications/types/__init__.py +30 -2
- merge/resources/ats/resources/async_passthrough/__init__.py +26 -1
- merge/resources/ats/resources/async_passthrough/types/__init__.py +26 -1
- merge/resources/ats/resources/attachments/client.py +6 -2
- merge/resources/ats/resources/audit_trail/client.py +6 -2
- merge/resources/ats/resources/candidates/__init__.py +30 -1
- merge/resources/ats/resources/candidates/client.py +6 -2
- merge/resources/ats/resources/candidates/types/__init__.py +32 -3
- merge/resources/ats/resources/departments/client.py +6 -2
- merge/resources/ats/resources/eeocs/__init__.py +36 -6
- merge/resources/ats/resources/eeocs/client.py +6 -2
- merge/resources/ats/resources/eeocs/types/__init__.py +34 -4
- merge/resources/ats/resources/interviews/__init__.py +29 -1
- merge/resources/ats/resources/interviews/client.py +6 -2
- merge/resources/ats/resources/interviews/types/__init__.py +30 -2
- merge/resources/ats/resources/issues/__init__.py +26 -1
- merge/resources/ats/resources/issues/client.py +6 -2
- merge/resources/ats/resources/issues/types/__init__.py +26 -1
- merge/resources/ats/resources/job_interview_stages/client.py +6 -2
- merge/resources/ats/resources/job_postings/__init__.py +26 -1
- merge/resources/ats/resources/job_postings/client.py +6 -2
- merge/resources/ats/resources/job_postings/types/__init__.py +26 -1
- merge/resources/ats/resources/jobs/__init__.py +36 -6
- merge/resources/ats/resources/jobs/client.py +8 -2
- merge/resources/ats/resources/jobs/types/__init__.py +34 -4
- merge/resources/ats/resources/link_token/__init__.py +26 -1
- merge/resources/ats/resources/link_token/types/__init__.py +26 -1
- merge/resources/ats/resources/linked_accounts/__init__.py +26 -1
- merge/resources/ats/resources/linked_accounts/client.py +6 -2
- merge/resources/ats/resources/linked_accounts/types/__init__.py +28 -1
- merge/resources/ats/resources/offers/__init__.py +26 -1
- merge/resources/ats/resources/offers/client.py +6 -2
- merge/resources/ats/resources/offers/types/__init__.py +30 -2
- merge/resources/ats/resources/offices/client.py +6 -2
- merge/resources/ats/resources/reject_reasons/client.py +6 -2
- merge/resources/ats/resources/scorecards/__init__.py +29 -1
- merge/resources/ats/resources/scorecards/client.py +6 -2
- merge/resources/ats/resources/scorecards/types/__init__.py +30 -2
- merge/resources/ats/resources/sync_status/client.py +6 -2
- merge/resources/ats/resources/tags/client.py +6 -2
- merge/resources/ats/resources/users/client.py +6 -2
- merge/resources/ats/types/__init__.py +462 -219
- merge/resources/ats/types/event_type_enum.py +4 -0
- merge/resources/crm/__init__.py +566 -272
- merge/resources/crm/client.py +556 -114
- merge/resources/crm/resources/__init__.py +121 -47
- merge/resources/crm/resources/accounts/client.py +12 -4
- merge/resources/crm/resources/association_types/client.py +2 -0
- merge/resources/crm/resources/associations/client.py +2 -0
- merge/resources/crm/resources/async_passthrough/__init__.py +26 -1
- merge/resources/crm/resources/async_passthrough/types/__init__.py +26 -1
- merge/resources/crm/resources/audit_trail/client.py +6 -2
- merge/resources/crm/resources/contacts/__init__.py +29 -1
- merge/resources/crm/resources/contacts/client.py +12 -4
- merge/resources/crm/resources/contacts/types/__init__.py +30 -2
- merge/resources/crm/resources/custom_object_classes/client.py +6 -2
- merge/resources/crm/resources/custom_objects/client.py +8 -2
- merge/resources/crm/resources/engagement_types/client.py +12 -4
- merge/resources/crm/resources/engagements/__init__.py +29 -1
- merge/resources/crm/resources/engagements/client.py +12 -4
- merge/resources/crm/resources/engagements/types/__init__.py +30 -2
- merge/resources/crm/resources/issues/__init__.py +26 -1
- merge/resources/crm/resources/issues/client.py +6 -2
- merge/resources/crm/resources/issues/types/__init__.py +26 -1
- merge/resources/crm/resources/leads/__init__.py +26 -1
- merge/resources/crm/resources/leads/client.py +12 -4
- merge/resources/crm/resources/leads/types/__init__.py +30 -2
- merge/resources/crm/resources/link_token/__init__.py +26 -1
- merge/resources/crm/resources/link_token/types/__init__.py +26 -1
- merge/resources/crm/resources/linked_accounts/__init__.py +26 -1
- merge/resources/crm/resources/linked_accounts/client.py +6 -2
- merge/resources/crm/resources/linked_accounts/types/__init__.py +28 -1
- merge/resources/crm/resources/notes/__init__.py +26 -1
- merge/resources/crm/resources/notes/client.py +12 -4
- merge/resources/crm/resources/notes/types/__init__.py +30 -2
- merge/resources/crm/resources/opportunities/__init__.py +34 -1
- merge/resources/crm/resources/opportunities/client.py +12 -4
- merge/resources/crm/resources/opportunities/types/__init__.py +32 -3
- merge/resources/crm/resources/stages/client.py +12 -4
- merge/resources/crm/resources/sync_status/client.py +6 -2
- merge/resources/crm/resources/tasks/__init__.py +26 -1
- merge/resources/crm/resources/tasks/client.py +12 -4
- merge/resources/crm/resources/tasks/types/__init__.py +30 -2
- merge/resources/crm/resources/users/client.py +12 -4
- merge/resources/crm/types/__init__.py +470 -224
- merge/resources/crm/types/remote_field_class.py +1 -0
- merge/resources/filestorage/__init__.py +322 -150
- merge/resources/filestorage/client.py +405 -87
- merge/resources/filestorage/resources/__init__.py +91 -34
- merge/resources/filestorage/resources/async_passthrough/__init__.py +26 -1
- merge/resources/filestorage/resources/async_passthrough/types/__init__.py +26 -1
- merge/resources/filestorage/resources/audit_trail/client.py +6 -2
- merge/resources/filestorage/resources/drives/client.py +6 -2
- merge/resources/filestorage/resources/files/__init__.py +36 -6
- merge/resources/filestorage/resources/files/client.py +42 -4
- merge/resources/filestorage/resources/files/raw_client.py +38 -0
- merge/resources/filestorage/resources/files/types/__init__.py +34 -4
- merge/resources/filestorage/resources/folders/__init__.py +29 -1
- merge/resources/filestorage/resources/folders/client.py +6 -2
- merge/resources/filestorage/resources/folders/types/__init__.py +30 -2
- merge/resources/filestorage/resources/groups/client.py +6 -2
- merge/resources/filestorage/resources/issues/__init__.py +26 -1
- merge/resources/filestorage/resources/issues/client.py +6 -2
- merge/resources/filestorage/resources/issues/types/__init__.py +26 -1
- merge/resources/filestorage/resources/linked_accounts/__init__.py +26 -1
- merge/resources/filestorage/resources/linked_accounts/client.py +6 -2
- merge/resources/filestorage/resources/linked_accounts/types/__init__.py +28 -1
- merge/resources/filestorage/resources/sync_status/client.py +6 -2
- merge/resources/filestorage/resources/users/client.py +6 -2
- merge/resources/filestorage/types/__init__.py +258 -117
- merge/resources/hris/__init__.py +576 -277
- merge/resources/hris/client.py +590 -120
- merge/resources/hris/resources/__init__.py +188 -86
- merge/resources/hris/resources/async_passthrough/__init__.py +26 -1
- merge/resources/hris/resources/async_passthrough/types/__init__.py +26 -1
- merge/resources/hris/resources/audit_trail/client.py +6 -2
- merge/resources/hris/resources/bank_info/__init__.py +29 -1
- merge/resources/hris/resources/bank_info/client.py +6 -2
- merge/resources/hris/resources/bank_info/types/__init__.py +30 -2
- merge/resources/hris/resources/benefits/client.py +6 -2
- merge/resources/hris/resources/companies/client.py +6 -2
- merge/resources/hris/resources/dependents/client.py +6 -2
- merge/resources/hris/resources/employee_payroll_runs/__init__.py +29 -1
- merge/resources/hris/resources/employee_payroll_runs/client.py +6 -2
- merge/resources/hris/resources/employee_payroll_runs/types/__init__.py +30 -2
- merge/resources/hris/resources/employees/__init__.py +44 -10
- merge/resources/hris/resources/employees/client.py +6 -2
- merge/resources/hris/resources/employees/types/__init__.py +42 -8
- merge/resources/hris/resources/employer_benefits/client.py +6 -2
- merge/resources/hris/resources/employments/__init__.py +42 -9
- merge/resources/hris/resources/employments/client.py +6 -2
- merge/resources/hris/resources/employments/types/__init__.py +40 -7
- merge/resources/hris/resources/groups/client.py +6 -2
- merge/resources/hris/resources/issues/__init__.py +26 -1
- merge/resources/hris/resources/issues/client.py +6 -2
- merge/resources/hris/resources/issues/types/__init__.py +26 -1
- merge/resources/hris/resources/link_token/__init__.py +26 -1
- merge/resources/hris/resources/link_token/types/__init__.py +26 -1
- merge/resources/hris/resources/linked_accounts/__init__.py +26 -1
- merge/resources/hris/resources/linked_accounts/client.py +6 -2
- merge/resources/hris/resources/linked_accounts/types/__init__.py +28 -1
- merge/resources/hris/resources/locations/__init__.py +38 -7
- merge/resources/hris/resources/locations/client.py +6 -2
- merge/resources/hris/resources/locations/types/__init__.py +36 -5
- merge/resources/hris/resources/pay_groups/client.py +6 -2
- merge/resources/hris/resources/payroll_runs/__init__.py +38 -7
- merge/resources/hris/resources/payroll_runs/client.py +6 -2
- merge/resources/hris/resources/payroll_runs/types/__init__.py +36 -5
- merge/resources/hris/resources/sync_status/client.py +6 -2
- merge/resources/hris/resources/teams/client.py +6 -2
- merge/resources/hris/resources/time_off/__init__.py +44 -10
- merge/resources/hris/resources/time_off/client.py +6 -2
- merge/resources/hris/resources/time_off/types/__init__.py +42 -8
- merge/resources/hris/resources/time_off_balances/__init__.py +26 -1
- merge/resources/hris/resources/time_off_balances/client.py +6 -2
- merge/resources/hris/resources/time_off_balances/types/__init__.py +28 -1
- merge/resources/hris/resources/timesheet_entries/__init__.py +26 -1
- merge/resources/hris/resources/timesheet_entries/client.py +6 -2
- merge/resources/hris/resources/timesheet_entries/types/__init__.py +28 -1
- merge/resources/hris/types/__init__.py +422 -199
- merge/resources/hris/types/benefit.py +4 -4
- merge/resources/ticketing/__init__.py +464 -221
- merge/resources/ticketing/client.py +507 -105
- merge/resources/ticketing/resources/__init__.py +120 -48
- merge/resources/ticketing/resources/accounts/client.py +6 -2
- merge/resources/ticketing/resources/async_passthrough/__init__.py +26 -1
- merge/resources/ticketing/resources/async_passthrough/types/__init__.py +26 -1
- merge/resources/ticketing/resources/attachments/client.py +6 -2
- merge/resources/ticketing/resources/audit_trail/client.py +6 -2
- merge/resources/ticketing/resources/collections/__init__.py +26 -1
- merge/resources/ticketing/resources/collections/client.py +8 -2
- merge/resources/ticketing/resources/collections/types/__init__.py +28 -1
- merge/resources/ticketing/resources/comments/__init__.py +29 -1
- merge/resources/ticketing/resources/comments/client.py +6 -2
- merge/resources/ticketing/resources/comments/types/__init__.py +30 -2
- merge/resources/ticketing/resources/contacts/client.py +6 -2
- merge/resources/ticketing/resources/issues/__init__.py +26 -1
- merge/resources/ticketing/resources/issues/client.py +6 -2
- merge/resources/ticketing/resources/issues/types/__init__.py +26 -1
- merge/resources/ticketing/resources/link_token/__init__.py +26 -1
- merge/resources/ticketing/resources/link_token/types/__init__.py +26 -1
- merge/resources/ticketing/resources/linked_accounts/__init__.py +26 -1
- merge/resources/ticketing/resources/linked_accounts/client.py +6 -2
- merge/resources/ticketing/resources/linked_accounts/types/__init__.py +28 -1
- merge/resources/ticketing/resources/projects/__init__.py +26 -1
- merge/resources/ticketing/resources/projects/client.py +8 -2
- merge/resources/ticketing/resources/projects/types/__init__.py +26 -1
- merge/resources/ticketing/resources/roles/client.py +6 -2
- merge/resources/ticketing/resources/sync_status/client.py +6 -2
- merge/resources/ticketing/resources/tags/client.py +6 -2
- merge/resources/ticketing/resources/teams/client.py +6 -2
- merge/resources/ticketing/resources/tickets/__init__.py +44 -10
- merge/resources/ticketing/resources/tickets/client.py +24 -4
- merge/resources/ticketing/resources/tickets/raw_client.py +10 -0
- merge/resources/ticketing/resources/tickets/types/__init__.py +42 -8
- merge/resources/ticketing/resources/users/__init__.py +26 -1
- merge/resources/ticketing/resources/users/client.py +6 -2
- merge/resources/ticketing/resources/users/types/__init__.py +30 -2
- merge/resources/ticketing/types/__init__.py +370 -173
- merge/resources/ticketing/types/patched_ticket_request.py +5 -5
- merge/resources/ticketing/types/remote_field_class.py +1 -0
- {mergepythonclient-2.1.1.dist-info → mergepythonclient-2.3.0.dist-info}/METADATA +5 -2
- {mergepythonclient-2.1.1.dist-info → mergepythonclient-2.3.0.dist-info}/RECORD +300 -298
- {mergepythonclient-2.1.1.dist-info → mergepythonclient-2.3.0.dist-info}/LICENSE.md +0 -0
- {mergepythonclient-2.1.1.dist-info → mergepythonclient-2.3.0.dist-info}/WHEEL +0 -0
|
@@ -127,7 +127,9 @@ class CreditNotesClient:
|
|
|
127
127
|
account_token="YOUR_ACCOUNT_TOKEN",
|
|
128
128
|
api_key="YOUR_API_KEY",
|
|
129
129
|
)
|
|
130
|
-
client.accounting.credit_notes.list(
|
|
130
|
+
client.accounting.credit_notes.list(
|
|
131
|
+
cursor="cD0yMDIxLTAxLTA2KzAzJTNBMjQlM0E1My40MzQzMjYlMkIwMCUzQTAw",
|
|
132
|
+
)
|
|
131
133
|
"""
|
|
132
134
|
_response = self._raw_client.list(
|
|
133
135
|
company_id=company_id,
|
|
@@ -399,7 +401,9 @@ class AsyncCreditNotesClient:
|
|
|
399
401
|
|
|
400
402
|
|
|
401
403
|
async def main() -> None:
|
|
402
|
-
await client.accounting.credit_notes.list(
|
|
404
|
+
await client.accounting.credit_notes.list(
|
|
405
|
+
cursor="cD0yMDIxLTAxLTA2KzAzJTNBMjQlM0E1My40MzQzMjYlMkIwMCUzQTAw",
|
|
406
|
+
)
|
|
403
407
|
|
|
404
408
|
|
|
405
409
|
asyncio.run(main())
|
|
@@ -2,12 +2,44 @@
|
|
|
2
2
|
|
|
3
3
|
# isort: skip_file
|
|
4
4
|
|
|
5
|
-
|
|
6
|
-
from
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
from .
|
|
10
|
-
from .
|
|
5
|
+
import typing
|
|
6
|
+
from importlib import import_module
|
|
7
|
+
|
|
8
|
+
if typing.TYPE_CHECKING:
|
|
9
|
+
from .credit_notes_list_request_expand import CreditNotesListRequestExpand
|
|
10
|
+
from .credit_notes_list_request_remote_fields import CreditNotesListRequestRemoteFields
|
|
11
|
+
from .credit_notes_list_request_show_enum_origins import CreditNotesListRequestShowEnumOrigins
|
|
12
|
+
from .credit_notes_retrieve_request_expand import CreditNotesRetrieveRequestExpand
|
|
13
|
+
from .credit_notes_retrieve_request_remote_fields import CreditNotesRetrieveRequestRemoteFields
|
|
14
|
+
from .credit_notes_retrieve_request_show_enum_origins import CreditNotesRetrieveRequestShowEnumOrigins
|
|
15
|
+
_dynamic_imports: typing.Dict[str, str] = {
|
|
16
|
+
"CreditNotesListRequestExpand": ".credit_notes_list_request_expand",
|
|
17
|
+
"CreditNotesListRequestRemoteFields": ".credit_notes_list_request_remote_fields",
|
|
18
|
+
"CreditNotesListRequestShowEnumOrigins": ".credit_notes_list_request_show_enum_origins",
|
|
19
|
+
"CreditNotesRetrieveRequestExpand": ".credit_notes_retrieve_request_expand",
|
|
20
|
+
"CreditNotesRetrieveRequestRemoteFields": ".credit_notes_retrieve_request_remote_fields",
|
|
21
|
+
"CreditNotesRetrieveRequestShowEnumOrigins": ".credit_notes_retrieve_request_show_enum_origins",
|
|
22
|
+
}
|
|
23
|
+
|
|
24
|
+
|
|
25
|
+
def __getattr__(attr_name: str) -> typing.Any:
|
|
26
|
+
module_name = _dynamic_imports.get(attr_name)
|
|
27
|
+
if module_name is None:
|
|
28
|
+
raise AttributeError(f"No {attr_name} found in _dynamic_imports for module name -> {__name__}")
|
|
29
|
+
try:
|
|
30
|
+
module = import_module(module_name, __package__)
|
|
31
|
+
result = getattr(module, attr_name)
|
|
32
|
+
return result
|
|
33
|
+
except ImportError as e:
|
|
34
|
+
raise ImportError(f"Failed to import {attr_name} from {module_name}: {e}") from e
|
|
35
|
+
except AttributeError as e:
|
|
36
|
+
raise AttributeError(f"Failed to get {attr_name} from {module_name}: {e}") from e
|
|
37
|
+
|
|
38
|
+
|
|
39
|
+
def __dir__():
|
|
40
|
+
lazy_attrs = list(_dynamic_imports.keys())
|
|
41
|
+
return sorted(lazy_attrs)
|
|
42
|
+
|
|
11
43
|
|
|
12
44
|
__all__ = [
|
|
13
45
|
"CreditNotesListRequestExpand",
|
|
@@ -99,7 +99,9 @@ class EmployeesClient:
|
|
|
99
99
|
account_token="YOUR_ACCOUNT_TOKEN",
|
|
100
100
|
api_key="YOUR_API_KEY",
|
|
101
101
|
)
|
|
102
|
-
client.accounting.employees.list(
|
|
102
|
+
client.accounting.employees.list(
|
|
103
|
+
cursor="cD0yMDIxLTAxLTA2KzAzJTNBMjQlM0E1My40MzQzMjYlMkIwMCUzQTAw",
|
|
104
|
+
)
|
|
103
105
|
"""
|
|
104
106
|
_response = self._raw_client.list(
|
|
105
107
|
company_id=company_id,
|
|
@@ -267,7 +269,9 @@ class AsyncEmployeesClient:
|
|
|
267
269
|
|
|
268
270
|
|
|
269
271
|
async def main() -> None:
|
|
270
|
-
await client.accounting.employees.list(
|
|
272
|
+
await client.accounting.employees.list(
|
|
273
|
+
cursor="cD0yMDIxLTAxLTA2KzAzJTNBMjQlM0E1My40MzQzMjYlMkIwMCUzQTAw",
|
|
274
|
+
)
|
|
271
275
|
|
|
272
276
|
|
|
273
277
|
asyncio.run(main())
|
|
@@ -2,11 +2,40 @@
|
|
|
2
2
|
|
|
3
3
|
# isort: skip_file
|
|
4
4
|
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
5
|
+
import typing
|
|
6
|
+
from importlib import import_module
|
|
7
|
+
|
|
8
|
+
if typing.TYPE_CHECKING:
|
|
9
|
+
from .types import (
|
|
10
|
+
ExpenseReportsLinesListRequestExpand,
|
|
11
|
+
ExpenseReportsListRequestExpand,
|
|
12
|
+
ExpenseReportsRetrieveRequestExpand,
|
|
13
|
+
)
|
|
14
|
+
_dynamic_imports: typing.Dict[str, str] = {
|
|
15
|
+
"ExpenseReportsLinesListRequestExpand": ".types",
|
|
16
|
+
"ExpenseReportsListRequestExpand": ".types",
|
|
17
|
+
"ExpenseReportsRetrieveRequestExpand": ".types",
|
|
18
|
+
}
|
|
19
|
+
|
|
20
|
+
|
|
21
|
+
def __getattr__(attr_name: str) -> typing.Any:
|
|
22
|
+
module_name = _dynamic_imports.get(attr_name)
|
|
23
|
+
if module_name is None:
|
|
24
|
+
raise AttributeError(f"No {attr_name} found in _dynamic_imports for module name -> {__name__}")
|
|
25
|
+
try:
|
|
26
|
+
module = import_module(module_name, __package__)
|
|
27
|
+
result = getattr(module, attr_name)
|
|
28
|
+
return result
|
|
29
|
+
except ImportError as e:
|
|
30
|
+
raise ImportError(f"Failed to import {attr_name} from {module_name}: {e}") from e
|
|
31
|
+
except AttributeError as e:
|
|
32
|
+
raise AttributeError(f"Failed to get {attr_name} from {module_name}: {e}") from e
|
|
33
|
+
|
|
34
|
+
|
|
35
|
+
def __dir__():
|
|
36
|
+
lazy_attrs = list(_dynamic_imports.keys())
|
|
37
|
+
return sorted(lazy_attrs)
|
|
38
|
+
|
|
10
39
|
|
|
11
40
|
__all__ = [
|
|
12
41
|
"ExpenseReportsLinesListRequestExpand",
|
|
@@ -114,7 +114,9 @@ class ExpenseReportsClient:
|
|
|
114
114
|
account_token="YOUR_ACCOUNT_TOKEN",
|
|
115
115
|
api_key="YOUR_API_KEY",
|
|
116
116
|
)
|
|
117
|
-
client.accounting.expense_reports.list(
|
|
117
|
+
client.accounting.expense_reports.list(
|
|
118
|
+
cursor="cD0yMDIxLTAxLTA2KzAzJTNBMjQlM0E1My40MzQzMjYlMkIwMCUzQTAw",
|
|
119
|
+
)
|
|
118
120
|
"""
|
|
119
121
|
_response = self._raw_client.list(
|
|
120
122
|
company_id=company_id,
|
|
@@ -245,6 +247,7 @@ class ExpenseReportsClient:
|
|
|
245
247
|
)
|
|
246
248
|
client.accounting.expense_reports.lines_list(
|
|
247
249
|
expense_report_id="expense_report_id",
|
|
250
|
+
cursor="cD0yMDIxLTAxLTA2KzAzJTNBMjQlM0E1My40MzQzMjYlMkIwMCUzQTAw",
|
|
248
251
|
)
|
|
249
252
|
"""
|
|
250
253
|
_response = self._raw_client.lines_list(
|
|
@@ -373,7 +376,9 @@ class ExpenseReportsClient:
|
|
|
373
376
|
account_token="YOUR_ACCOUNT_TOKEN",
|
|
374
377
|
api_key="YOUR_API_KEY",
|
|
375
378
|
)
|
|
376
|
-
client.accounting.expense_reports.lines_remote_field_classes_list(
|
|
379
|
+
client.accounting.expense_reports.lines_remote_field_classes_list(
|
|
380
|
+
cursor="cD0yMDIxLTAxLTA2KzAzJTNBMjQlM0E1My40MzQzMjYlMkIwMCUzQTAw",
|
|
381
|
+
)
|
|
377
382
|
"""
|
|
378
383
|
_response = self._raw_client.lines_remote_field_classes_list(
|
|
379
384
|
cursor=cursor,
|
|
@@ -468,7 +473,9 @@ class ExpenseReportsClient:
|
|
|
468
473
|
account_token="YOUR_ACCOUNT_TOKEN",
|
|
469
474
|
api_key="YOUR_API_KEY",
|
|
470
475
|
)
|
|
471
|
-
client.accounting.expense_reports.remote_field_classes_list(
|
|
476
|
+
client.accounting.expense_reports.remote_field_classes_list(
|
|
477
|
+
cursor="cD0yMDIxLTAxLTA2KzAzJTNBMjQlM0E1My40MzQzMjYlMkIwMCUzQTAw",
|
|
478
|
+
)
|
|
472
479
|
"""
|
|
473
480
|
_response = self._raw_client.remote_field_classes_list(
|
|
474
481
|
cursor=cursor,
|
|
@@ -581,7 +588,9 @@ class AsyncExpenseReportsClient:
|
|
|
581
588
|
|
|
582
589
|
|
|
583
590
|
async def main() -> None:
|
|
584
|
-
await client.accounting.expense_reports.list(
|
|
591
|
+
await client.accounting.expense_reports.list(
|
|
592
|
+
cursor="cD0yMDIxLTAxLTA2KzAzJTNBMjQlM0E1My40MzQzMjYlMkIwMCUzQTAw",
|
|
593
|
+
)
|
|
585
594
|
|
|
586
595
|
|
|
587
596
|
asyncio.run(main())
|
|
@@ -728,6 +737,7 @@ class AsyncExpenseReportsClient:
|
|
|
728
737
|
async def main() -> None:
|
|
729
738
|
await client.accounting.expense_reports.lines_list(
|
|
730
739
|
expense_report_id="expense_report_id",
|
|
740
|
+
cursor="cD0yMDIxLTAxLTA2KzAzJTNBMjQlM0E1My40MzQzMjYlMkIwMCUzQTAw",
|
|
731
741
|
)
|
|
732
742
|
|
|
733
743
|
|
|
@@ -872,7 +882,9 @@ class AsyncExpenseReportsClient:
|
|
|
872
882
|
|
|
873
883
|
|
|
874
884
|
async def main() -> None:
|
|
875
|
-
await client.accounting.expense_reports.lines_remote_field_classes_list(
|
|
885
|
+
await client.accounting.expense_reports.lines_remote_field_classes_list(
|
|
886
|
+
cursor="cD0yMDIxLTAxLTA2KzAzJTNBMjQlM0E1My40MzQzMjYlMkIwMCUzQTAw",
|
|
887
|
+
)
|
|
876
888
|
|
|
877
889
|
|
|
878
890
|
asyncio.run(main())
|
|
@@ -983,7 +995,9 @@ class AsyncExpenseReportsClient:
|
|
|
983
995
|
|
|
984
996
|
|
|
985
997
|
async def main() -> None:
|
|
986
|
-
await client.accounting.expense_reports.remote_field_classes_list(
|
|
998
|
+
await client.accounting.expense_reports.remote_field_classes_list(
|
|
999
|
+
cursor="cD0yMDIxLTAxLTA2KzAzJTNBMjQlM0E1My40MzQzMjYlMkIwMCUzQTAw",
|
|
1000
|
+
)
|
|
987
1001
|
|
|
988
1002
|
|
|
989
1003
|
asyncio.run(main())
|
|
@@ -2,9 +2,38 @@
|
|
|
2
2
|
|
|
3
3
|
# isort: skip_file
|
|
4
4
|
|
|
5
|
-
|
|
6
|
-
from
|
|
7
|
-
|
|
5
|
+
import typing
|
|
6
|
+
from importlib import import_module
|
|
7
|
+
|
|
8
|
+
if typing.TYPE_CHECKING:
|
|
9
|
+
from .expense_reports_lines_list_request_expand import ExpenseReportsLinesListRequestExpand
|
|
10
|
+
from .expense_reports_list_request_expand import ExpenseReportsListRequestExpand
|
|
11
|
+
from .expense_reports_retrieve_request_expand import ExpenseReportsRetrieveRequestExpand
|
|
12
|
+
_dynamic_imports: typing.Dict[str, str] = {
|
|
13
|
+
"ExpenseReportsLinesListRequestExpand": ".expense_reports_lines_list_request_expand",
|
|
14
|
+
"ExpenseReportsListRequestExpand": ".expense_reports_list_request_expand",
|
|
15
|
+
"ExpenseReportsRetrieveRequestExpand": ".expense_reports_retrieve_request_expand",
|
|
16
|
+
}
|
|
17
|
+
|
|
18
|
+
|
|
19
|
+
def __getattr__(attr_name: str) -> typing.Any:
|
|
20
|
+
module_name = _dynamic_imports.get(attr_name)
|
|
21
|
+
if module_name is None:
|
|
22
|
+
raise AttributeError(f"No {attr_name} found in _dynamic_imports for module name -> {__name__}")
|
|
23
|
+
try:
|
|
24
|
+
module = import_module(module_name, __package__)
|
|
25
|
+
result = getattr(module, attr_name)
|
|
26
|
+
return result
|
|
27
|
+
except ImportError as e:
|
|
28
|
+
raise ImportError(f"Failed to import {attr_name} from {module_name}: {e}") from e
|
|
29
|
+
except AttributeError as e:
|
|
30
|
+
raise AttributeError(f"Failed to get {attr_name} from {module_name}: {e}") from e
|
|
31
|
+
|
|
32
|
+
|
|
33
|
+
def __dir__():
|
|
34
|
+
lazy_attrs = list(_dynamic_imports.keys())
|
|
35
|
+
return sorted(lazy_attrs)
|
|
36
|
+
|
|
8
37
|
|
|
9
38
|
__all__ = [
|
|
10
39
|
"ExpenseReportsLinesListRequestExpand",
|
|
@@ -2,6 +2,34 @@
|
|
|
2
2
|
|
|
3
3
|
# isort: skip_file
|
|
4
4
|
|
|
5
|
-
|
|
5
|
+
import typing
|
|
6
|
+
from importlib import import_module
|
|
7
|
+
|
|
8
|
+
if typing.TYPE_CHECKING:
|
|
9
|
+
from .types import ExpensesListRequestExpand, ExpensesRetrieveRequestExpand
|
|
10
|
+
_dynamic_imports: typing.Dict[str, str] = {
|
|
11
|
+
"ExpensesListRequestExpand": ".types",
|
|
12
|
+
"ExpensesRetrieveRequestExpand": ".types",
|
|
13
|
+
}
|
|
14
|
+
|
|
15
|
+
|
|
16
|
+
def __getattr__(attr_name: str) -> typing.Any:
|
|
17
|
+
module_name = _dynamic_imports.get(attr_name)
|
|
18
|
+
if module_name is None:
|
|
19
|
+
raise AttributeError(f"No {attr_name} found in _dynamic_imports for module name -> {__name__}")
|
|
20
|
+
try:
|
|
21
|
+
module = import_module(module_name, __package__)
|
|
22
|
+
result = getattr(module, attr_name)
|
|
23
|
+
return result
|
|
24
|
+
except ImportError as e:
|
|
25
|
+
raise ImportError(f"Failed to import {attr_name} from {module_name}: {e}") from e
|
|
26
|
+
except AttributeError as e:
|
|
27
|
+
raise AttributeError(f"Failed to get {attr_name} from {module_name}: {e}") from e
|
|
28
|
+
|
|
29
|
+
|
|
30
|
+
def __dir__():
|
|
31
|
+
lazy_attrs = list(_dynamic_imports.keys())
|
|
32
|
+
return sorted(lazy_attrs)
|
|
33
|
+
|
|
6
34
|
|
|
7
35
|
__all__ = ["ExpensesListRequestExpand", "ExpensesRetrieveRequestExpand"]
|
|
@@ -120,7 +120,9 @@ class ExpensesClient:
|
|
|
120
120
|
account_token="YOUR_ACCOUNT_TOKEN",
|
|
121
121
|
api_key="YOUR_API_KEY",
|
|
122
122
|
)
|
|
123
|
-
client.accounting.expenses.list(
|
|
123
|
+
client.accounting.expenses.list(
|
|
124
|
+
cursor="cD0yMDIxLTAxLTA2KzAzJTNBMjQlM0E1My40MzQzMjYlMkIwMCUzQTAw",
|
|
125
|
+
)
|
|
124
126
|
"""
|
|
125
127
|
_response = self._raw_client.list(
|
|
126
128
|
company_id=company_id,
|
|
@@ -302,7 +304,9 @@ class ExpensesClient:
|
|
|
302
304
|
account_token="YOUR_ACCOUNT_TOKEN",
|
|
303
305
|
api_key="YOUR_API_KEY",
|
|
304
306
|
)
|
|
305
|
-
client.accounting.expenses.lines_remote_field_classes_list(
|
|
307
|
+
client.accounting.expenses.lines_remote_field_classes_list(
|
|
308
|
+
cursor="cD0yMDIxLTAxLTA2KzAzJTNBMjQlM0E1My40MzQzMjYlMkIwMCUzQTAw",
|
|
309
|
+
)
|
|
306
310
|
"""
|
|
307
311
|
_response = self._raw_client.lines_remote_field_classes_list(
|
|
308
312
|
cursor=cursor,
|
|
@@ -397,7 +401,9 @@ class ExpensesClient:
|
|
|
397
401
|
account_token="YOUR_ACCOUNT_TOKEN",
|
|
398
402
|
api_key="YOUR_API_KEY",
|
|
399
403
|
)
|
|
400
|
-
client.accounting.expenses.remote_field_classes_list(
|
|
404
|
+
client.accounting.expenses.remote_field_classes_list(
|
|
405
|
+
cursor="cD0yMDIxLTAxLTA2KzAzJTNBMjQlM0E1My40MzQzMjYlMkIwMCUzQTAw",
|
|
406
|
+
)
|
|
401
407
|
"""
|
|
402
408
|
_response = self._raw_client.remote_field_classes_list(
|
|
403
409
|
cursor=cursor,
|
|
@@ -518,7 +524,9 @@ class AsyncExpensesClient:
|
|
|
518
524
|
|
|
519
525
|
|
|
520
526
|
async def main() -> None:
|
|
521
|
-
await client.accounting.expenses.list(
|
|
527
|
+
await client.accounting.expenses.list(
|
|
528
|
+
cursor="cD0yMDIxLTAxLTA2KzAzJTNBMjQlM0E1My40MzQzMjYlMkIwMCUzQTAw",
|
|
529
|
+
)
|
|
522
530
|
|
|
523
531
|
|
|
524
532
|
asyncio.run(main())
|
|
@@ -724,7 +732,9 @@ class AsyncExpensesClient:
|
|
|
724
732
|
|
|
725
733
|
|
|
726
734
|
async def main() -> None:
|
|
727
|
-
await client.accounting.expenses.lines_remote_field_classes_list(
|
|
735
|
+
await client.accounting.expenses.lines_remote_field_classes_list(
|
|
736
|
+
cursor="cD0yMDIxLTAxLTA2KzAzJTNBMjQlM0E1My40MzQzMjYlMkIwMCUzQTAw",
|
|
737
|
+
)
|
|
728
738
|
|
|
729
739
|
|
|
730
740
|
asyncio.run(main())
|
|
@@ -835,7 +845,9 @@ class AsyncExpensesClient:
|
|
|
835
845
|
|
|
836
846
|
|
|
837
847
|
async def main() -> None:
|
|
838
|
-
await client.accounting.expenses.remote_field_classes_list(
|
|
848
|
+
await client.accounting.expenses.remote_field_classes_list(
|
|
849
|
+
cursor="cD0yMDIxLTAxLTA2KzAzJTNBMjQlM0E1My40MzQzMjYlMkIwMCUzQTAw",
|
|
850
|
+
)
|
|
839
851
|
|
|
840
852
|
|
|
841
853
|
asyncio.run(main())
|
|
@@ -2,7 +2,35 @@
|
|
|
2
2
|
|
|
3
3
|
# isort: skip_file
|
|
4
4
|
|
|
5
|
-
|
|
6
|
-
from
|
|
5
|
+
import typing
|
|
6
|
+
from importlib import import_module
|
|
7
|
+
|
|
8
|
+
if typing.TYPE_CHECKING:
|
|
9
|
+
from .expenses_list_request_expand import ExpensesListRequestExpand
|
|
10
|
+
from .expenses_retrieve_request_expand import ExpensesRetrieveRequestExpand
|
|
11
|
+
_dynamic_imports: typing.Dict[str, str] = {
|
|
12
|
+
"ExpensesListRequestExpand": ".expenses_list_request_expand",
|
|
13
|
+
"ExpensesRetrieveRequestExpand": ".expenses_retrieve_request_expand",
|
|
14
|
+
}
|
|
15
|
+
|
|
16
|
+
|
|
17
|
+
def __getattr__(attr_name: str) -> typing.Any:
|
|
18
|
+
module_name = _dynamic_imports.get(attr_name)
|
|
19
|
+
if module_name is None:
|
|
20
|
+
raise AttributeError(f"No {attr_name} found in _dynamic_imports for module name -> {__name__}")
|
|
21
|
+
try:
|
|
22
|
+
module = import_module(module_name, __package__)
|
|
23
|
+
result = getattr(module, attr_name)
|
|
24
|
+
return result
|
|
25
|
+
except ImportError as e:
|
|
26
|
+
raise ImportError(f"Failed to import {attr_name} from {module_name}: {e}") from e
|
|
27
|
+
except AttributeError as e:
|
|
28
|
+
raise AttributeError(f"Failed to get {attr_name} from {module_name}: {e}") from e
|
|
29
|
+
|
|
30
|
+
|
|
31
|
+
def __dir__():
|
|
32
|
+
lazy_attrs = list(_dynamic_imports.keys())
|
|
33
|
+
return sorted(lazy_attrs)
|
|
34
|
+
|
|
7
35
|
|
|
8
36
|
__all__ = ["ExpensesListRequestExpand", "ExpensesRetrieveRequestExpand"]
|
|
@@ -2,6 +2,34 @@
|
|
|
2
2
|
|
|
3
3
|
# isort: skip_file
|
|
4
4
|
|
|
5
|
-
|
|
5
|
+
import typing
|
|
6
|
+
from importlib import import_module
|
|
7
|
+
|
|
8
|
+
if typing.TYPE_CHECKING:
|
|
9
|
+
from .types import GeneralLedgerTransactionsListRequestExpand, GeneralLedgerTransactionsRetrieveRequestExpand
|
|
10
|
+
_dynamic_imports: typing.Dict[str, str] = {
|
|
11
|
+
"GeneralLedgerTransactionsListRequestExpand": ".types",
|
|
12
|
+
"GeneralLedgerTransactionsRetrieveRequestExpand": ".types",
|
|
13
|
+
}
|
|
14
|
+
|
|
15
|
+
|
|
16
|
+
def __getattr__(attr_name: str) -> typing.Any:
|
|
17
|
+
module_name = _dynamic_imports.get(attr_name)
|
|
18
|
+
if module_name is None:
|
|
19
|
+
raise AttributeError(f"No {attr_name} found in _dynamic_imports for module name -> {__name__}")
|
|
20
|
+
try:
|
|
21
|
+
module = import_module(module_name, __package__)
|
|
22
|
+
result = getattr(module, attr_name)
|
|
23
|
+
return result
|
|
24
|
+
except ImportError as e:
|
|
25
|
+
raise ImportError(f"Failed to import {attr_name} from {module_name}: {e}") from e
|
|
26
|
+
except AttributeError as e:
|
|
27
|
+
raise AttributeError(f"Failed to get {attr_name} from {module_name}: {e}") from e
|
|
28
|
+
|
|
29
|
+
|
|
30
|
+
def __dir__():
|
|
31
|
+
lazy_attrs = list(_dynamic_imports.keys())
|
|
32
|
+
return sorted(lazy_attrs)
|
|
33
|
+
|
|
6
34
|
|
|
7
35
|
__all__ = ["GeneralLedgerTransactionsListRequestExpand", "GeneralLedgerTransactionsRetrieveRequestExpand"]
|
|
@@ -109,7 +109,9 @@ class GeneralLedgerTransactionsClient:
|
|
|
109
109
|
account_token="YOUR_ACCOUNT_TOKEN",
|
|
110
110
|
api_key="YOUR_API_KEY",
|
|
111
111
|
)
|
|
112
|
-
client.accounting.general_ledger_transactions.list(
|
|
112
|
+
client.accounting.general_ledger_transactions.list(
|
|
113
|
+
cursor="cD0yMDIxLTAxLTA2KzAzJTNBMjQlM0E1My40MzQzMjYlMkIwMCUzQTAw",
|
|
114
|
+
)
|
|
113
115
|
"""
|
|
114
116
|
_response = self._raw_client.list(
|
|
115
117
|
company_id=company_id,
|
|
@@ -287,7 +289,9 @@ class AsyncGeneralLedgerTransactionsClient:
|
|
|
287
289
|
|
|
288
290
|
|
|
289
291
|
async def main() -> None:
|
|
290
|
-
await client.accounting.general_ledger_transactions.list(
|
|
292
|
+
await client.accounting.general_ledger_transactions.list(
|
|
293
|
+
cursor="cD0yMDIxLTAxLTA2KzAzJTNBMjQlM0E1My40MzQzMjYlMkIwMCUzQTAw",
|
|
294
|
+
)
|
|
291
295
|
|
|
292
296
|
|
|
293
297
|
asyncio.run(main())
|
|
@@ -2,7 +2,35 @@
|
|
|
2
2
|
|
|
3
3
|
# isort: skip_file
|
|
4
4
|
|
|
5
|
-
|
|
6
|
-
from
|
|
5
|
+
import typing
|
|
6
|
+
from importlib import import_module
|
|
7
|
+
|
|
8
|
+
if typing.TYPE_CHECKING:
|
|
9
|
+
from .general_ledger_transactions_list_request_expand import GeneralLedgerTransactionsListRequestExpand
|
|
10
|
+
from .general_ledger_transactions_retrieve_request_expand import GeneralLedgerTransactionsRetrieveRequestExpand
|
|
11
|
+
_dynamic_imports: typing.Dict[str, str] = {
|
|
12
|
+
"GeneralLedgerTransactionsListRequestExpand": ".general_ledger_transactions_list_request_expand",
|
|
13
|
+
"GeneralLedgerTransactionsRetrieveRequestExpand": ".general_ledger_transactions_retrieve_request_expand",
|
|
14
|
+
}
|
|
15
|
+
|
|
16
|
+
|
|
17
|
+
def __getattr__(attr_name: str) -> typing.Any:
|
|
18
|
+
module_name = _dynamic_imports.get(attr_name)
|
|
19
|
+
if module_name is None:
|
|
20
|
+
raise AttributeError(f"No {attr_name} found in _dynamic_imports for module name -> {__name__}")
|
|
21
|
+
try:
|
|
22
|
+
module = import_module(module_name, __package__)
|
|
23
|
+
result = getattr(module, attr_name)
|
|
24
|
+
return result
|
|
25
|
+
except ImportError as e:
|
|
26
|
+
raise ImportError(f"Failed to import {attr_name} from {module_name}: {e}") from e
|
|
27
|
+
except AttributeError as e:
|
|
28
|
+
raise AttributeError(f"Failed to get {attr_name} from {module_name}: {e}") from e
|
|
29
|
+
|
|
30
|
+
|
|
31
|
+
def __dir__():
|
|
32
|
+
lazy_attrs = list(_dynamic_imports.keys())
|
|
33
|
+
return sorted(lazy_attrs)
|
|
34
|
+
|
|
7
35
|
|
|
8
36
|
__all__ = ["GeneralLedgerTransactionsListRequestExpand", "GeneralLedgerTransactionsRetrieveRequestExpand"]
|
|
@@ -99,7 +99,9 @@ class IncomeStatementsClient:
|
|
|
99
99
|
account_token="YOUR_ACCOUNT_TOKEN",
|
|
100
100
|
api_key="YOUR_API_KEY",
|
|
101
101
|
)
|
|
102
|
-
client.accounting.income_statements.list(
|
|
102
|
+
client.accounting.income_statements.list(
|
|
103
|
+
cursor="cD0yMDIxLTAxLTA2KzAzJTNBMjQlM0E1My40MzQzMjYlMkIwMCUzQTAw",
|
|
104
|
+
)
|
|
103
105
|
"""
|
|
104
106
|
_response = self._raw_client.list(
|
|
105
107
|
company_id=company_id,
|
|
@@ -267,7 +269,9 @@ class AsyncIncomeStatementsClient:
|
|
|
267
269
|
|
|
268
270
|
|
|
269
271
|
async def main() -> None:
|
|
270
|
-
await client.accounting.income_statements.list(
|
|
272
|
+
await client.accounting.income_statements.list(
|
|
273
|
+
cursor="cD0yMDIxLTAxLTA2KzAzJTNBMjQlM0E1My40MzQzMjYlMkIwMCUzQTAw",
|
|
274
|
+
)
|
|
271
275
|
|
|
272
276
|
|
|
273
277
|
asyncio.run(main())
|
|
@@ -2,12 +2,42 @@
|
|
|
2
2
|
|
|
3
3
|
# isort: skip_file
|
|
4
4
|
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
5
|
+
import typing
|
|
6
|
+
from importlib import import_module
|
|
7
|
+
|
|
8
|
+
if typing.TYPE_CHECKING:
|
|
9
|
+
from .types import (
|
|
10
|
+
InvoicesListRequestExpand,
|
|
11
|
+
InvoicesListRequestStatus,
|
|
12
|
+
InvoicesListRequestType,
|
|
13
|
+
InvoicesRetrieveRequestExpand,
|
|
14
|
+
)
|
|
15
|
+
_dynamic_imports: typing.Dict[str, str] = {
|
|
16
|
+
"InvoicesListRequestExpand": ".types",
|
|
17
|
+
"InvoicesListRequestStatus": ".types",
|
|
18
|
+
"InvoicesListRequestType": ".types",
|
|
19
|
+
"InvoicesRetrieveRequestExpand": ".types",
|
|
20
|
+
}
|
|
21
|
+
|
|
22
|
+
|
|
23
|
+
def __getattr__(attr_name: str) -> typing.Any:
|
|
24
|
+
module_name = _dynamic_imports.get(attr_name)
|
|
25
|
+
if module_name is None:
|
|
26
|
+
raise AttributeError(f"No {attr_name} found in _dynamic_imports for module name -> {__name__}")
|
|
27
|
+
try:
|
|
28
|
+
module = import_module(module_name, __package__)
|
|
29
|
+
result = getattr(module, attr_name)
|
|
30
|
+
return result
|
|
31
|
+
except ImportError as e:
|
|
32
|
+
raise ImportError(f"Failed to import {attr_name} from {module_name}: {e}") from e
|
|
33
|
+
except AttributeError as e:
|
|
34
|
+
raise AttributeError(f"Failed to get {attr_name} from {module_name}: {e}") from e
|
|
35
|
+
|
|
36
|
+
|
|
37
|
+
def __dir__():
|
|
38
|
+
lazy_attrs = list(_dynamic_imports.keys())
|
|
39
|
+
return sorted(lazy_attrs)
|
|
40
|
+
|
|
11
41
|
|
|
12
42
|
__all__ = [
|
|
13
43
|
"InvoicesListRequestExpand",
|
|
@@ -156,7 +156,9 @@ class InvoicesClient:
|
|
|
156
156
|
account_token="YOUR_ACCOUNT_TOKEN",
|
|
157
157
|
api_key="YOUR_API_KEY",
|
|
158
158
|
)
|
|
159
|
-
client.accounting.invoices.list(
|
|
159
|
+
client.accounting.invoices.list(
|
|
160
|
+
cursor="cD0yMDIxLTAxLTA2KzAzJTNBMjQlM0E1My40MzQzMjYlMkIwMCUzQTAw",
|
|
161
|
+
)
|
|
160
162
|
"""
|
|
161
163
|
_response = self._raw_client.list(
|
|
162
164
|
company_id=company_id,
|
|
@@ -407,7 +409,9 @@ class InvoicesClient:
|
|
|
407
409
|
account_token="YOUR_ACCOUNT_TOKEN",
|
|
408
410
|
api_key="YOUR_API_KEY",
|
|
409
411
|
)
|
|
410
|
-
client.accounting.invoices.line_items_remote_field_classes_list(
|
|
412
|
+
client.accounting.invoices.line_items_remote_field_classes_list(
|
|
413
|
+
cursor="cD0yMDIxLTAxLTA2KzAzJTNBMjQlM0E1My40MzQzMjYlMkIwMCUzQTAw",
|
|
414
|
+
)
|
|
411
415
|
"""
|
|
412
416
|
_response = self._raw_client.line_items_remote_field_classes_list(
|
|
413
417
|
cursor=cursor,
|
|
@@ -533,7 +537,9 @@ class InvoicesClient:
|
|
|
533
537
|
account_token="YOUR_ACCOUNT_TOKEN",
|
|
534
538
|
api_key="YOUR_API_KEY",
|
|
535
539
|
)
|
|
536
|
-
client.accounting.invoices.remote_field_classes_list(
|
|
540
|
+
client.accounting.invoices.remote_field_classes_list(
|
|
541
|
+
cursor="cD0yMDIxLTAxLTA2KzAzJTNBMjQlM0E1My40MzQzMjYlMkIwMCUzQTAw",
|
|
542
|
+
)
|
|
537
543
|
"""
|
|
538
544
|
_response = self._raw_client.remote_field_classes_list(
|
|
539
545
|
cursor=cursor,
|
|
@@ -688,7 +694,9 @@ class AsyncInvoicesClient:
|
|
|
688
694
|
|
|
689
695
|
|
|
690
696
|
async def main() -> None:
|
|
691
|
-
await client.accounting.invoices.list(
|
|
697
|
+
await client.accounting.invoices.list(
|
|
698
|
+
cursor="cD0yMDIxLTAxLTA2KzAzJTNBMjQlM0E1My40MzQzMjYlMkIwMCUzQTAw",
|
|
699
|
+
)
|
|
692
700
|
|
|
693
701
|
|
|
694
702
|
asyncio.run(main())
|
|
@@ -971,7 +979,9 @@ class AsyncInvoicesClient:
|
|
|
971
979
|
|
|
972
980
|
|
|
973
981
|
async def main() -> None:
|
|
974
|
-
await client.accounting.invoices.line_items_remote_field_classes_list(
|
|
982
|
+
await client.accounting.invoices.line_items_remote_field_classes_list(
|
|
983
|
+
cursor="cD0yMDIxLTAxLTA2KzAzJTNBMjQlM0E1My40MzQzMjYlMkIwMCUzQTAw",
|
|
984
|
+
)
|
|
975
985
|
|
|
976
986
|
|
|
977
987
|
asyncio.run(main())
|
|
@@ -1123,7 +1133,9 @@ class AsyncInvoicesClient:
|
|
|
1123
1133
|
|
|
1124
1134
|
|
|
1125
1135
|
async def main() -> None:
|
|
1126
|
-
await client.accounting.invoices.remote_field_classes_list(
|
|
1136
|
+
await client.accounting.invoices.remote_field_classes_list(
|
|
1137
|
+
cursor="cD0yMDIxLTAxLTA2KzAzJTNBMjQlM0E1My40MzQzMjYlMkIwMCUzQTAw",
|
|
1138
|
+
)
|
|
1127
1139
|
|
|
1128
1140
|
|
|
1129
1141
|
asyncio.run(main())
|