mergepythonclient 2.2.0__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.
Files changed (171) hide show
  1. merge/__init__.py +40 -4
  2. merge/client.py +118 -18
  3. merge/core/__init__.py +75 -21
  4. merge/core/client_wrapper.py +2 -2
  5. merge/resources/__init__.py +33 -1
  6. merge/resources/accounting/__init__.py +1240 -609
  7. merge/resources/accounting/client.py +835 -165
  8. merge/resources/accounting/resources/__init__.py +208 -92
  9. merge/resources/accounting/resources/accounts/__init__.py +36 -6
  10. merge/resources/accounting/resources/accounts/types/__init__.py +34 -4
  11. merge/resources/accounting/resources/async_passthrough/__init__.py +26 -1
  12. merge/resources/accounting/resources/async_passthrough/types/__init__.py +26 -1
  13. merge/resources/accounting/resources/company_info/__init__.py +29 -1
  14. merge/resources/accounting/resources/company_info/types/__init__.py +30 -2
  15. merge/resources/accounting/resources/contacts/__init__.py +29 -1
  16. merge/resources/accounting/resources/contacts/types/__init__.py +30 -2
  17. merge/resources/accounting/resources/credit_notes/__init__.py +40 -8
  18. merge/resources/accounting/resources/credit_notes/types/__init__.py +38 -6
  19. merge/resources/accounting/resources/expense_reports/__init__.py +34 -5
  20. merge/resources/accounting/resources/expense_reports/types/__init__.py +32 -3
  21. merge/resources/accounting/resources/expenses/__init__.py +29 -1
  22. merge/resources/accounting/resources/expenses/types/__init__.py +30 -2
  23. merge/resources/accounting/resources/general_ledger_transactions/__init__.py +29 -1
  24. merge/resources/accounting/resources/general_ledger_transactions/types/__init__.py +30 -2
  25. merge/resources/accounting/resources/invoices/__init__.py +36 -6
  26. merge/resources/accounting/resources/invoices/types/__init__.py +34 -4
  27. merge/resources/accounting/resources/issues/__init__.py +26 -1
  28. merge/resources/accounting/resources/issues/types/__init__.py +26 -1
  29. merge/resources/accounting/resources/items/__init__.py +26 -1
  30. merge/resources/accounting/resources/items/types/__init__.py +30 -2
  31. merge/resources/accounting/resources/journal_entries/__init__.py +29 -1
  32. merge/resources/accounting/resources/journal_entries/types/__init__.py +30 -2
  33. merge/resources/accounting/resources/link_token/__init__.py +26 -1
  34. merge/resources/accounting/resources/link_token/types/__init__.py +26 -1
  35. merge/resources/accounting/resources/linked_accounts/__init__.py +26 -1
  36. merge/resources/accounting/resources/linked_accounts/types/__init__.py +28 -1
  37. merge/resources/accounting/resources/payments/__init__.py +29 -1
  38. merge/resources/accounting/resources/payments/types/__init__.py +30 -2
  39. merge/resources/accounting/resources/projects/__init__.py +29 -1
  40. merge/resources/accounting/resources/projects/types/__init__.py +30 -2
  41. merge/resources/accounting/resources/purchase_orders/__init__.py +29 -1
  42. merge/resources/accounting/resources/purchase_orders/types/__init__.py +30 -2
  43. merge/resources/accounting/resources/transactions/__init__.py +29 -1
  44. merge/resources/accounting/resources/transactions/types/__init__.py +30 -2
  45. merge/resources/accounting/resources/vendor_credits/__init__.py +29 -1
  46. merge/resources/accounting/resources/vendor_credits/types/__init__.py +30 -2
  47. merge/resources/accounting/types/__init__.py +1068 -521
  48. merge/resources/ats/__init__.py +586 -282
  49. merge/resources/ats/client.py +590 -120
  50. merge/resources/ats/resources/__init__.py +150 -63
  51. merge/resources/ats/resources/activities/__init__.py +36 -6
  52. merge/resources/ats/resources/activities/types/__init__.py +34 -4
  53. merge/resources/ats/resources/applications/__init__.py +29 -1
  54. merge/resources/ats/resources/applications/types/__init__.py +30 -2
  55. merge/resources/ats/resources/async_passthrough/__init__.py +26 -1
  56. merge/resources/ats/resources/async_passthrough/types/__init__.py +26 -1
  57. merge/resources/ats/resources/candidates/__init__.py +30 -1
  58. merge/resources/ats/resources/candidates/types/__init__.py +32 -3
  59. merge/resources/ats/resources/eeocs/__init__.py +36 -6
  60. merge/resources/ats/resources/eeocs/types/__init__.py +34 -4
  61. merge/resources/ats/resources/interviews/__init__.py +29 -1
  62. merge/resources/ats/resources/interviews/types/__init__.py +30 -2
  63. merge/resources/ats/resources/issues/__init__.py +26 -1
  64. merge/resources/ats/resources/issues/types/__init__.py +26 -1
  65. merge/resources/ats/resources/job_postings/__init__.py +26 -1
  66. merge/resources/ats/resources/job_postings/types/__init__.py +26 -1
  67. merge/resources/ats/resources/jobs/__init__.py +36 -6
  68. merge/resources/ats/resources/jobs/types/__init__.py +34 -4
  69. merge/resources/ats/resources/link_token/__init__.py +26 -1
  70. merge/resources/ats/resources/link_token/types/__init__.py +26 -1
  71. merge/resources/ats/resources/linked_accounts/__init__.py +26 -1
  72. merge/resources/ats/resources/linked_accounts/types/__init__.py +28 -1
  73. merge/resources/ats/resources/offers/__init__.py +26 -1
  74. merge/resources/ats/resources/offers/types/__init__.py +30 -2
  75. merge/resources/ats/resources/scorecards/__init__.py +29 -1
  76. merge/resources/ats/resources/scorecards/types/__init__.py +30 -2
  77. merge/resources/ats/types/__init__.py +462 -219
  78. merge/resources/crm/__init__.py +566 -272
  79. merge/resources/crm/client.py +556 -114
  80. merge/resources/crm/resources/__init__.py +121 -47
  81. merge/resources/crm/resources/async_passthrough/__init__.py +26 -1
  82. merge/resources/crm/resources/async_passthrough/types/__init__.py +26 -1
  83. merge/resources/crm/resources/contacts/__init__.py +29 -1
  84. merge/resources/crm/resources/contacts/types/__init__.py +30 -2
  85. merge/resources/crm/resources/engagements/__init__.py +29 -1
  86. merge/resources/crm/resources/engagements/types/__init__.py +30 -2
  87. merge/resources/crm/resources/issues/__init__.py +26 -1
  88. merge/resources/crm/resources/issues/types/__init__.py +26 -1
  89. merge/resources/crm/resources/leads/__init__.py +26 -1
  90. merge/resources/crm/resources/leads/types/__init__.py +30 -2
  91. merge/resources/crm/resources/link_token/__init__.py +26 -1
  92. merge/resources/crm/resources/link_token/types/__init__.py +26 -1
  93. merge/resources/crm/resources/linked_accounts/__init__.py +26 -1
  94. merge/resources/crm/resources/linked_accounts/types/__init__.py +28 -1
  95. merge/resources/crm/resources/notes/__init__.py +26 -1
  96. merge/resources/crm/resources/notes/types/__init__.py +30 -2
  97. merge/resources/crm/resources/opportunities/__init__.py +34 -1
  98. merge/resources/crm/resources/opportunities/types/__init__.py +32 -3
  99. merge/resources/crm/resources/tasks/__init__.py +26 -1
  100. merge/resources/crm/resources/tasks/types/__init__.py +30 -2
  101. merge/resources/crm/types/__init__.py +470 -224
  102. merge/resources/filestorage/__init__.py +322 -150
  103. merge/resources/filestorage/client.py +405 -87
  104. merge/resources/filestorage/resources/__init__.py +91 -34
  105. merge/resources/filestorage/resources/async_passthrough/__init__.py +26 -1
  106. merge/resources/filestorage/resources/async_passthrough/types/__init__.py +26 -1
  107. merge/resources/filestorage/resources/files/__init__.py +36 -6
  108. merge/resources/filestorage/resources/files/types/__init__.py +34 -4
  109. merge/resources/filestorage/resources/folders/__init__.py +29 -1
  110. merge/resources/filestorage/resources/folders/types/__init__.py +30 -2
  111. merge/resources/filestorage/resources/issues/__init__.py +26 -1
  112. merge/resources/filestorage/resources/issues/types/__init__.py +26 -1
  113. merge/resources/filestorage/resources/linked_accounts/__init__.py +26 -1
  114. merge/resources/filestorage/resources/linked_accounts/types/__init__.py +28 -1
  115. merge/resources/filestorage/types/__init__.py +258 -117
  116. merge/resources/hris/__init__.py +576 -277
  117. merge/resources/hris/client.py +590 -120
  118. merge/resources/hris/resources/__init__.py +188 -86
  119. merge/resources/hris/resources/async_passthrough/__init__.py +26 -1
  120. merge/resources/hris/resources/async_passthrough/types/__init__.py +26 -1
  121. merge/resources/hris/resources/bank_info/__init__.py +29 -1
  122. merge/resources/hris/resources/bank_info/types/__init__.py +30 -2
  123. merge/resources/hris/resources/employee_payroll_runs/__init__.py +29 -1
  124. merge/resources/hris/resources/employee_payroll_runs/types/__init__.py +30 -2
  125. merge/resources/hris/resources/employees/__init__.py +44 -10
  126. merge/resources/hris/resources/employees/types/__init__.py +42 -8
  127. merge/resources/hris/resources/employments/__init__.py +42 -9
  128. merge/resources/hris/resources/employments/types/__init__.py +40 -7
  129. merge/resources/hris/resources/issues/__init__.py +26 -1
  130. merge/resources/hris/resources/issues/types/__init__.py +26 -1
  131. merge/resources/hris/resources/link_token/__init__.py +26 -1
  132. merge/resources/hris/resources/link_token/types/__init__.py +26 -1
  133. merge/resources/hris/resources/linked_accounts/__init__.py +26 -1
  134. merge/resources/hris/resources/linked_accounts/types/__init__.py +28 -1
  135. merge/resources/hris/resources/locations/__init__.py +38 -7
  136. merge/resources/hris/resources/locations/types/__init__.py +36 -5
  137. merge/resources/hris/resources/payroll_runs/__init__.py +38 -7
  138. merge/resources/hris/resources/payroll_runs/types/__init__.py +36 -5
  139. merge/resources/hris/resources/time_off/__init__.py +44 -10
  140. merge/resources/hris/resources/time_off/types/__init__.py +42 -8
  141. merge/resources/hris/resources/time_off_balances/__init__.py +26 -1
  142. merge/resources/hris/resources/time_off_balances/types/__init__.py +28 -1
  143. merge/resources/hris/resources/timesheet_entries/__init__.py +26 -1
  144. merge/resources/hris/resources/timesheet_entries/types/__init__.py +28 -1
  145. merge/resources/hris/types/__init__.py +422 -199
  146. merge/resources/ticketing/__init__.py +464 -221
  147. merge/resources/ticketing/client.py +507 -105
  148. merge/resources/ticketing/resources/__init__.py +120 -48
  149. merge/resources/ticketing/resources/async_passthrough/__init__.py +26 -1
  150. merge/resources/ticketing/resources/async_passthrough/types/__init__.py +26 -1
  151. merge/resources/ticketing/resources/collections/__init__.py +26 -1
  152. merge/resources/ticketing/resources/collections/types/__init__.py +28 -1
  153. merge/resources/ticketing/resources/comments/__init__.py +29 -1
  154. merge/resources/ticketing/resources/comments/types/__init__.py +30 -2
  155. merge/resources/ticketing/resources/issues/__init__.py +26 -1
  156. merge/resources/ticketing/resources/issues/types/__init__.py +26 -1
  157. merge/resources/ticketing/resources/link_token/__init__.py +26 -1
  158. merge/resources/ticketing/resources/link_token/types/__init__.py +26 -1
  159. merge/resources/ticketing/resources/linked_accounts/__init__.py +26 -1
  160. merge/resources/ticketing/resources/linked_accounts/types/__init__.py +28 -1
  161. merge/resources/ticketing/resources/projects/__init__.py +26 -1
  162. merge/resources/ticketing/resources/projects/types/__init__.py +26 -1
  163. merge/resources/ticketing/resources/tickets/__init__.py +44 -10
  164. merge/resources/ticketing/resources/tickets/types/__init__.py +42 -8
  165. merge/resources/ticketing/resources/users/__init__.py +26 -1
  166. merge/resources/ticketing/resources/users/types/__init__.py +30 -2
  167. merge/resources/ticketing/types/__init__.py +370 -173
  168. {mergepythonclient-2.2.0.dist-info → mergepythonclient-2.3.0.dist-info}/METADATA +2 -1
  169. {mergepythonclient-2.2.0.dist-info → mergepythonclient-2.3.0.dist-info}/RECORD +171 -171
  170. {mergepythonclient-2.2.0.dist-info → mergepythonclient-2.3.0.dist-info}/LICENSE.md +0 -0
  171. {mergepythonclient-2.2.0.dist-info → mergepythonclient-2.3.0.dist-info}/WHEEL +0 -0
@@ -1,176 +1,354 @@
1
1
  # This file was auto-generated by Fern from our API Definition.
2
2
 
3
+ from __future__ import annotations
4
+
5
+ import typing
6
+
3
7
  from ...core.client_wrapper import AsyncClientWrapper, SyncClientWrapper
4
8
  from .raw_client import AsyncRawTicketingClient, RawTicketingClient
5
- from .resources.account_details.client import AccountDetailsClient, AsyncAccountDetailsClient
6
- from .resources.account_token.client import AccountTokenClient, AsyncAccountTokenClient
7
- from .resources.accounts.client import AccountsClient, AsyncAccountsClient
8
- from .resources.async_passthrough.client import AsyncAsyncPassthroughClient
9
- from .resources.async_passthrough.client import (
10
- AsyncPassthroughClient as resources_ticketing_resources_async_passthrough_client_AsyncPassthroughClient,
11
- )
12
- from .resources.attachments.client import AsyncAttachmentsClient, AttachmentsClient
13
- from .resources.audit_trail.client import AsyncAuditTrailClient, AuditTrailClient
14
- from .resources.available_actions.client import AsyncAvailableActionsClient, AvailableActionsClient
15
- from .resources.collections.client import AsyncCollectionsClient, CollectionsClient
16
- from .resources.comments.client import AsyncCommentsClient, CommentsClient
17
- from .resources.contacts.client import AsyncContactsClient, ContactsClient
18
- from .resources.delete_account.client import AsyncDeleteAccountClient, DeleteAccountClient
19
- from .resources.field_mapping.client import AsyncFieldMappingClient, FieldMappingClient
20
- from .resources.force_resync.client import AsyncForceResyncClient, ForceResyncClient
21
- from .resources.generate_key.client import AsyncGenerateKeyClient, GenerateKeyClient
22
- from .resources.issues.client import AsyncIssuesClient, IssuesClient
23
- from .resources.link_token.client import AsyncLinkTokenClient, LinkTokenClient
24
- from .resources.linked_accounts.client import AsyncLinkedAccountsClient, LinkedAccountsClient
25
- from .resources.passthrough.client import (
26
- AsyncPassthroughClient as resources_ticketing_resources_passthrough_client_AsyncPassthroughClient,
27
- )
28
- from .resources.passthrough.client import PassthroughClient
29
- from .resources.projects.client import AsyncProjectsClient, ProjectsClient
30
- from .resources.regenerate_key.client import AsyncRegenerateKeyClient, RegenerateKeyClient
31
- from .resources.roles.client import AsyncRolesClient, RolesClient
32
- from .resources.scopes.client import AsyncScopesClient, ScopesClient
33
- from .resources.sync_status.client import AsyncSyncStatusClient, SyncStatusClient
34
- from .resources.tags.client import AsyncTagsClient, TagsClient
35
- from .resources.teams.client import AsyncTeamsClient, TeamsClient
36
- from .resources.tickets.client import AsyncTicketsClient, TicketsClient
37
- from .resources.users.client import AsyncUsersClient, UsersClient
38
- from .resources.webhook_receivers.client import AsyncWebhookReceiversClient, WebhookReceiversClient
9
+
10
+ if typing.TYPE_CHECKING:
11
+ from .resources.account_details.client import AccountDetailsClient, AsyncAccountDetailsClient
12
+ from .resources.account_token.client import AccountTokenClient, AsyncAccountTokenClient
13
+ from .resources.accounts.client import AccountsClient, AsyncAccountsClient
14
+ from .resources.async_passthrough.client import AsyncAsyncPassthroughClient
15
+ from .resources.async_passthrough.client import (
16
+ AsyncPassthroughClient as resources_ticketing_resources_async_passthrough_client_AsyncPassthroughClient,
17
+ )
18
+ from .resources.attachments.client import AsyncAttachmentsClient, AttachmentsClient
19
+ from .resources.audit_trail.client import AsyncAuditTrailClient, AuditTrailClient
20
+ from .resources.available_actions.client import AsyncAvailableActionsClient, AvailableActionsClient
21
+ from .resources.collections.client import AsyncCollectionsClient, CollectionsClient
22
+ from .resources.comments.client import AsyncCommentsClient, CommentsClient
23
+ from .resources.contacts.client import AsyncContactsClient, ContactsClient
24
+ from .resources.delete_account.client import AsyncDeleteAccountClient, DeleteAccountClient
25
+ from .resources.field_mapping.client import AsyncFieldMappingClient, FieldMappingClient
26
+ from .resources.force_resync.client import AsyncForceResyncClient, ForceResyncClient
27
+ from .resources.generate_key.client import AsyncGenerateKeyClient, GenerateKeyClient
28
+ from .resources.issues.client import AsyncIssuesClient, IssuesClient
29
+ from .resources.link_token.client import AsyncLinkTokenClient, LinkTokenClient
30
+ from .resources.linked_accounts.client import AsyncLinkedAccountsClient, LinkedAccountsClient
31
+ from .resources.passthrough.client import (
32
+ AsyncPassthroughClient as resources_ticketing_resources_passthrough_client_AsyncPassthroughClient,
33
+ )
34
+ from .resources.passthrough.client import PassthroughClient
35
+ from .resources.projects.client import AsyncProjectsClient, ProjectsClient
36
+ from .resources.regenerate_key.client import AsyncRegenerateKeyClient, RegenerateKeyClient
37
+ from .resources.roles.client import AsyncRolesClient, RolesClient
38
+ from .resources.scopes.client import AsyncScopesClient, ScopesClient
39
+ from .resources.sync_status.client import AsyncSyncStatusClient, SyncStatusClient
40
+ from .resources.tags.client import AsyncTagsClient, TagsClient
41
+ from .resources.teams.client import AsyncTeamsClient, TeamsClient
42
+ from .resources.tickets.client import AsyncTicketsClient, TicketsClient
43
+ from .resources.users.client import AsyncUsersClient, UsersClient
44
+ from .resources.webhook_receivers.client import AsyncWebhookReceiversClient, WebhookReceiversClient
39
45
 
40
46
 
41
47
  class TicketingClient:
42
48
  def __init__(self, *, client_wrapper: SyncClientWrapper):
43
49
  self._raw_client = RawTicketingClient(client_wrapper=client_wrapper)
44
- self.account_details = AccountDetailsClient(client_wrapper=client_wrapper)
50
+ self._client_wrapper = client_wrapper
51
+ self._account_details: typing.Optional[AccountDetailsClient] = None
52
+ self._account_token: typing.Optional[AccountTokenClient] = None
53
+ self._accounts: typing.Optional[AccountsClient] = None
54
+ self._async_passthrough: typing.Optional[
55
+ resources_ticketing_resources_async_passthrough_client_AsyncPassthroughClient
56
+ ] = None
57
+ self._attachments: typing.Optional[AttachmentsClient] = None
58
+ self._audit_trail: typing.Optional[AuditTrailClient] = None
59
+ self._available_actions: typing.Optional[AvailableActionsClient] = None
60
+ self._collections: typing.Optional[CollectionsClient] = None
61
+ self._comments: typing.Optional[CommentsClient] = None
62
+ self._contacts: typing.Optional[ContactsClient] = None
63
+ self._scopes: typing.Optional[ScopesClient] = None
64
+ self._delete_account: typing.Optional[DeleteAccountClient] = None
65
+ self._field_mapping: typing.Optional[FieldMappingClient] = None
66
+ self._generate_key: typing.Optional[GenerateKeyClient] = None
67
+ self._issues: typing.Optional[IssuesClient] = None
68
+ self._link_token: typing.Optional[LinkTokenClient] = None
69
+ self._linked_accounts: typing.Optional[LinkedAccountsClient] = None
70
+ self._passthrough: typing.Optional[PassthroughClient] = None
71
+ self._projects: typing.Optional[ProjectsClient] = None
72
+ self._regenerate_key: typing.Optional[RegenerateKeyClient] = None
73
+ self._roles: typing.Optional[RolesClient] = None
74
+ self._sync_status: typing.Optional[SyncStatusClient] = None
75
+ self._force_resync: typing.Optional[ForceResyncClient] = None
76
+ self._tags: typing.Optional[TagsClient] = None
77
+ self._teams: typing.Optional[TeamsClient] = None
78
+ self._tickets: typing.Optional[TicketsClient] = None
79
+ self._users: typing.Optional[UsersClient] = None
80
+ self._webhook_receivers: typing.Optional[WebhookReceiversClient] = None
45
81
 
46
- self.account_token = AccountTokenClient(client_wrapper=client_wrapper)
82
+ @property
83
+ def with_raw_response(self) -> RawTicketingClient:
84
+ """
85
+ Retrieves a raw implementation of this client that returns raw responses.
47
86
 
48
- self.accounts = AccountsClient(client_wrapper=client_wrapper)
87
+ Returns
88
+ -------
89
+ RawTicketingClient
90
+ """
91
+ return self._raw_client
49
92
 
50
- self.async_passthrough = resources_ticketing_resources_async_passthrough_client_AsyncPassthroughClient(
51
- client_wrapper=client_wrapper
52
- )
93
+ @property
94
+ def account_details(self):
95
+ if self._account_details is None:
96
+ from .resources.account_details.client import AccountDetailsClient # noqa: E402
53
97
 
54
- self.attachments = AttachmentsClient(client_wrapper=client_wrapper)
98
+ self._account_details = AccountDetailsClient(client_wrapper=self._client_wrapper)
99
+ return self._account_details
55
100
 
56
- self.audit_trail = AuditTrailClient(client_wrapper=client_wrapper)
101
+ @property
102
+ def account_token(self):
103
+ if self._account_token is None:
104
+ from .resources.account_token.client import AccountTokenClient # noqa: E402
57
105
 
58
- self.available_actions = AvailableActionsClient(client_wrapper=client_wrapper)
106
+ self._account_token = AccountTokenClient(client_wrapper=self._client_wrapper)
107
+ return self._account_token
59
108
 
60
- self.collections = CollectionsClient(client_wrapper=client_wrapper)
109
+ @property
110
+ def accounts(self):
111
+ if self._accounts is None:
112
+ from .resources.accounts.client import AccountsClient # noqa: E402
61
113
 
62
- self.comments = CommentsClient(client_wrapper=client_wrapper)
114
+ self._accounts = AccountsClient(client_wrapper=self._client_wrapper)
115
+ return self._accounts
63
116
 
64
- self.contacts = ContactsClient(client_wrapper=client_wrapper)
117
+ @property
118
+ def async_passthrough(self):
119
+ if self._async_passthrough is None:
120
+ self._async_passthrough = resources_ticketing_resources_async_passthrough_client_AsyncPassthroughClient(
121
+ client_wrapper=self._client_wrapper
122
+ )
123
+ return self._async_passthrough
65
124
 
66
- self.scopes = ScopesClient(client_wrapper=client_wrapper)
125
+ @property
126
+ def attachments(self):
127
+ if self._attachments is None:
128
+ from .resources.attachments.client import AttachmentsClient # noqa: E402
67
129
 
68
- self.delete_account = DeleteAccountClient(client_wrapper=client_wrapper)
130
+ self._attachments = AttachmentsClient(client_wrapper=self._client_wrapper)
131
+ return self._attachments
69
132
 
70
- self.field_mapping = FieldMappingClient(client_wrapper=client_wrapper)
133
+ @property
134
+ def audit_trail(self):
135
+ if self._audit_trail is None:
136
+ from .resources.audit_trail.client import AuditTrailClient # noqa: E402
71
137
 
72
- self.generate_key = GenerateKeyClient(client_wrapper=client_wrapper)
138
+ self._audit_trail = AuditTrailClient(client_wrapper=self._client_wrapper)
139
+ return self._audit_trail
73
140
 
74
- self.issues = IssuesClient(client_wrapper=client_wrapper)
141
+ @property
142
+ def available_actions(self):
143
+ if self._available_actions is None:
144
+ from .resources.available_actions.client import AvailableActionsClient # noqa: E402
75
145
 
76
- self.link_token = LinkTokenClient(client_wrapper=client_wrapper)
146
+ self._available_actions = AvailableActionsClient(client_wrapper=self._client_wrapper)
147
+ return self._available_actions
77
148
 
78
- self.linked_accounts = LinkedAccountsClient(client_wrapper=client_wrapper)
149
+ @property
150
+ def collections(self):
151
+ if self._collections is None:
152
+ from .resources.collections.client import CollectionsClient # noqa: E402
79
153
 
80
- self.passthrough = PassthroughClient(client_wrapper=client_wrapper)
154
+ self._collections = CollectionsClient(client_wrapper=self._client_wrapper)
155
+ return self._collections
81
156
 
82
- self.projects = ProjectsClient(client_wrapper=client_wrapper)
157
+ @property
158
+ def comments(self):
159
+ if self._comments is None:
160
+ from .resources.comments.client import CommentsClient # noqa: E402
83
161
 
84
- self.regenerate_key = RegenerateKeyClient(client_wrapper=client_wrapper)
162
+ self._comments = CommentsClient(client_wrapper=self._client_wrapper)
163
+ return self._comments
85
164
 
86
- self.roles = RolesClient(client_wrapper=client_wrapper)
165
+ @property
166
+ def contacts(self):
167
+ if self._contacts is None:
168
+ from .resources.contacts.client import ContactsClient # noqa: E402
87
169
 
88
- self.sync_status = SyncStatusClient(client_wrapper=client_wrapper)
170
+ self._contacts = ContactsClient(client_wrapper=self._client_wrapper)
171
+ return self._contacts
89
172
 
90
- self.force_resync = ForceResyncClient(client_wrapper=client_wrapper)
173
+ @property
174
+ def scopes(self):
175
+ if self._scopes is None:
176
+ from .resources.scopes.client import ScopesClient # noqa: E402
91
177
 
92
- self.tags = TagsClient(client_wrapper=client_wrapper)
178
+ self._scopes = ScopesClient(client_wrapper=self._client_wrapper)
179
+ return self._scopes
93
180
 
94
- self.teams = TeamsClient(client_wrapper=client_wrapper)
181
+ @property
182
+ def delete_account(self):
183
+ if self._delete_account is None:
184
+ from .resources.delete_account.client import DeleteAccountClient # noqa: E402
95
185
 
96
- self.tickets = TicketsClient(client_wrapper=client_wrapper)
186
+ self._delete_account = DeleteAccountClient(client_wrapper=self._client_wrapper)
187
+ return self._delete_account
97
188
 
98
- self.users = UsersClient(client_wrapper=client_wrapper)
189
+ @property
190
+ def field_mapping(self):
191
+ if self._field_mapping is None:
192
+ from .resources.field_mapping.client import FieldMappingClient # noqa: E402
99
193
 
100
- self.webhook_receivers = WebhookReceiversClient(client_wrapper=client_wrapper)
194
+ self._field_mapping = FieldMappingClient(client_wrapper=self._client_wrapper)
195
+ return self._field_mapping
101
196
 
102
197
  @property
103
- def with_raw_response(self) -> RawTicketingClient:
104
- """
105
- Retrieves a raw implementation of this client that returns raw responses.
198
+ def generate_key(self):
199
+ if self._generate_key is None:
200
+ from .resources.generate_key.client import GenerateKeyClient # noqa: E402
106
201
 
107
- Returns
108
- -------
109
- RawTicketingClient
110
- """
111
- return self._raw_client
202
+ self._generate_key = GenerateKeyClient(client_wrapper=self._client_wrapper)
203
+ return self._generate_key
204
+
205
+ @property
206
+ def issues(self):
207
+ if self._issues is None:
208
+ from .resources.issues.client import IssuesClient # noqa: E402
112
209
 
210
+ self._issues = IssuesClient(client_wrapper=self._client_wrapper)
211
+ return self._issues
113
212
 
114
- class AsyncTicketingClient:
115
- def __init__(self, *, client_wrapper: AsyncClientWrapper):
116
- self._raw_client = AsyncRawTicketingClient(client_wrapper=client_wrapper)
117
- self.account_details = AsyncAccountDetailsClient(client_wrapper=client_wrapper)
213
+ @property
214
+ def link_token(self):
215
+ if self._link_token is None:
216
+ from .resources.link_token.client import LinkTokenClient # noqa: E402
118
217
 
119
- self.account_token = AsyncAccountTokenClient(client_wrapper=client_wrapper)
218
+ self._link_token = LinkTokenClient(client_wrapper=self._client_wrapper)
219
+ return self._link_token
120
220
 
121
- self.accounts = AsyncAccountsClient(client_wrapper=client_wrapper)
221
+ @property
222
+ def linked_accounts(self):
223
+ if self._linked_accounts is None:
224
+ from .resources.linked_accounts.client import LinkedAccountsClient # noqa: E402
122
225
 
123
- self.async_passthrough = AsyncAsyncPassthroughClient(client_wrapper=client_wrapper)
226
+ self._linked_accounts = LinkedAccountsClient(client_wrapper=self._client_wrapper)
227
+ return self._linked_accounts
124
228
 
125
- self.attachments = AsyncAttachmentsClient(client_wrapper=client_wrapper)
229
+ @property
230
+ def passthrough(self):
231
+ if self._passthrough is None:
232
+ from .resources.passthrough.client import PassthroughClient # noqa: E402
126
233
 
127
- self.audit_trail = AsyncAuditTrailClient(client_wrapper=client_wrapper)
234
+ self._passthrough = PassthroughClient(client_wrapper=self._client_wrapper)
235
+ return self._passthrough
128
236
 
129
- self.available_actions = AsyncAvailableActionsClient(client_wrapper=client_wrapper)
237
+ @property
238
+ def projects(self):
239
+ if self._projects is None:
240
+ from .resources.projects.client import ProjectsClient # noqa: E402
130
241
 
131
- self.collections = AsyncCollectionsClient(client_wrapper=client_wrapper)
242
+ self._projects = ProjectsClient(client_wrapper=self._client_wrapper)
243
+ return self._projects
132
244
 
133
- self.comments = AsyncCommentsClient(client_wrapper=client_wrapper)
245
+ @property
246
+ def regenerate_key(self):
247
+ if self._regenerate_key is None:
248
+ from .resources.regenerate_key.client import RegenerateKeyClient # noqa: E402
134
249
 
135
- self.contacts = AsyncContactsClient(client_wrapper=client_wrapper)
250
+ self._regenerate_key = RegenerateKeyClient(client_wrapper=self._client_wrapper)
251
+ return self._regenerate_key
136
252
 
137
- self.scopes = AsyncScopesClient(client_wrapper=client_wrapper)
253
+ @property
254
+ def roles(self):
255
+ if self._roles is None:
256
+ from .resources.roles.client import RolesClient # noqa: E402
138
257
 
139
- self.delete_account = AsyncDeleteAccountClient(client_wrapper=client_wrapper)
258
+ self._roles = RolesClient(client_wrapper=self._client_wrapper)
259
+ return self._roles
140
260
 
141
- self.field_mapping = AsyncFieldMappingClient(client_wrapper=client_wrapper)
261
+ @property
262
+ def sync_status(self):
263
+ if self._sync_status is None:
264
+ from .resources.sync_status.client import SyncStatusClient # noqa: E402
142
265
 
143
- self.generate_key = AsyncGenerateKeyClient(client_wrapper=client_wrapper)
266
+ self._sync_status = SyncStatusClient(client_wrapper=self._client_wrapper)
267
+ return self._sync_status
144
268
 
145
- self.issues = AsyncIssuesClient(client_wrapper=client_wrapper)
269
+ @property
270
+ def force_resync(self):
271
+ if self._force_resync is None:
272
+ from .resources.force_resync.client import ForceResyncClient # noqa: E402
146
273
 
147
- self.link_token = AsyncLinkTokenClient(client_wrapper=client_wrapper)
274
+ self._force_resync = ForceResyncClient(client_wrapper=self._client_wrapper)
275
+ return self._force_resync
148
276
 
149
- self.linked_accounts = AsyncLinkedAccountsClient(client_wrapper=client_wrapper)
277
+ @property
278
+ def tags(self):
279
+ if self._tags is None:
280
+ from .resources.tags.client import TagsClient # noqa: E402
150
281
 
151
- self.passthrough = resources_ticketing_resources_passthrough_client_AsyncPassthroughClient(
152
- client_wrapper=client_wrapper
153
- )
282
+ self._tags = TagsClient(client_wrapper=self._client_wrapper)
283
+ return self._tags
154
284
 
155
- self.projects = AsyncProjectsClient(client_wrapper=client_wrapper)
285
+ @property
286
+ def teams(self):
287
+ if self._teams is None:
288
+ from .resources.teams.client import TeamsClient # noqa: E402
156
289
 
157
- self.regenerate_key = AsyncRegenerateKeyClient(client_wrapper=client_wrapper)
290
+ self._teams = TeamsClient(client_wrapper=self._client_wrapper)
291
+ return self._teams
158
292
 
159
- self.roles = AsyncRolesClient(client_wrapper=client_wrapper)
293
+ @property
294
+ def tickets(self):
295
+ if self._tickets is None:
296
+ from .resources.tickets.client import TicketsClient # noqa: E402
160
297
 
161
- self.sync_status = AsyncSyncStatusClient(client_wrapper=client_wrapper)
298
+ self._tickets = TicketsClient(client_wrapper=self._client_wrapper)
299
+ return self._tickets
162
300
 
163
- self.force_resync = AsyncForceResyncClient(client_wrapper=client_wrapper)
301
+ @property
302
+ def users(self):
303
+ if self._users is None:
304
+ from .resources.users.client import UsersClient # noqa: E402
164
305
 
165
- self.tags = AsyncTagsClient(client_wrapper=client_wrapper)
306
+ self._users = UsersClient(client_wrapper=self._client_wrapper)
307
+ return self._users
166
308
 
167
- self.teams = AsyncTeamsClient(client_wrapper=client_wrapper)
309
+ @property
310
+ def webhook_receivers(self):
311
+ if self._webhook_receivers is None:
312
+ from .resources.webhook_receivers.client import WebhookReceiversClient # noqa: E402
168
313
 
169
- self.tickets = AsyncTicketsClient(client_wrapper=client_wrapper)
314
+ self._webhook_receivers = WebhookReceiversClient(client_wrapper=self._client_wrapper)
315
+ return self._webhook_receivers
170
316
 
171
- self.users = AsyncUsersClient(client_wrapper=client_wrapper)
172
317
 
173
- self.webhook_receivers = AsyncWebhookReceiversClient(client_wrapper=client_wrapper)
318
+ class AsyncTicketingClient:
319
+ def __init__(self, *, client_wrapper: AsyncClientWrapper):
320
+ self._raw_client = AsyncRawTicketingClient(client_wrapper=client_wrapper)
321
+ self._client_wrapper = client_wrapper
322
+ self._account_details: typing.Optional[AsyncAccountDetailsClient] = None
323
+ self._account_token: typing.Optional[AsyncAccountTokenClient] = None
324
+ self._accounts: typing.Optional[AsyncAccountsClient] = None
325
+ self._async_passthrough: typing.Optional[AsyncAsyncPassthroughClient] = None
326
+ self._attachments: typing.Optional[AsyncAttachmentsClient] = None
327
+ self._audit_trail: typing.Optional[AsyncAuditTrailClient] = None
328
+ self._available_actions: typing.Optional[AsyncAvailableActionsClient] = None
329
+ self._collections: typing.Optional[AsyncCollectionsClient] = None
330
+ self._comments: typing.Optional[AsyncCommentsClient] = None
331
+ self._contacts: typing.Optional[AsyncContactsClient] = None
332
+ self._scopes: typing.Optional[AsyncScopesClient] = None
333
+ self._delete_account: typing.Optional[AsyncDeleteAccountClient] = None
334
+ self._field_mapping: typing.Optional[AsyncFieldMappingClient] = None
335
+ self._generate_key: typing.Optional[AsyncGenerateKeyClient] = None
336
+ self._issues: typing.Optional[AsyncIssuesClient] = None
337
+ self._link_token: typing.Optional[AsyncLinkTokenClient] = None
338
+ self._linked_accounts: typing.Optional[AsyncLinkedAccountsClient] = None
339
+ self._passthrough: typing.Optional[resources_ticketing_resources_passthrough_client_AsyncPassthroughClient] = (
340
+ None
341
+ )
342
+ self._projects: typing.Optional[AsyncProjectsClient] = None
343
+ self._regenerate_key: typing.Optional[AsyncRegenerateKeyClient] = None
344
+ self._roles: typing.Optional[AsyncRolesClient] = None
345
+ self._sync_status: typing.Optional[AsyncSyncStatusClient] = None
346
+ self._force_resync: typing.Optional[AsyncForceResyncClient] = None
347
+ self._tags: typing.Optional[AsyncTagsClient] = None
348
+ self._teams: typing.Optional[AsyncTeamsClient] = None
349
+ self._tickets: typing.Optional[AsyncTicketsClient] = None
350
+ self._users: typing.Optional[AsyncUsersClient] = None
351
+ self._webhook_receivers: typing.Optional[AsyncWebhookReceiversClient] = None
174
352
 
175
353
  @property
176
354
  def with_raw_response(self) -> AsyncRawTicketingClient:
@@ -182,3 +360,227 @@ class AsyncTicketingClient:
182
360
  AsyncRawTicketingClient
183
361
  """
184
362
  return self._raw_client
363
+
364
+ @property
365
+ def account_details(self):
366
+ if self._account_details is None:
367
+ from .resources.account_details.client import AsyncAccountDetailsClient # noqa: E402
368
+
369
+ self._account_details = AsyncAccountDetailsClient(client_wrapper=self._client_wrapper)
370
+ return self._account_details
371
+
372
+ @property
373
+ def account_token(self):
374
+ if self._account_token is None:
375
+ from .resources.account_token.client import AsyncAccountTokenClient # noqa: E402
376
+
377
+ self._account_token = AsyncAccountTokenClient(client_wrapper=self._client_wrapper)
378
+ return self._account_token
379
+
380
+ @property
381
+ def accounts(self):
382
+ if self._accounts is None:
383
+ from .resources.accounts.client import AsyncAccountsClient # noqa: E402
384
+
385
+ self._accounts = AsyncAccountsClient(client_wrapper=self._client_wrapper)
386
+ return self._accounts
387
+
388
+ @property
389
+ def async_passthrough(self):
390
+ if self._async_passthrough is None:
391
+ from .resources.async_passthrough.client import AsyncAsyncPassthroughClient # noqa: E402
392
+
393
+ self._async_passthrough = AsyncAsyncPassthroughClient(client_wrapper=self._client_wrapper)
394
+ return self._async_passthrough
395
+
396
+ @property
397
+ def attachments(self):
398
+ if self._attachments is None:
399
+ from .resources.attachments.client import AsyncAttachmentsClient # noqa: E402
400
+
401
+ self._attachments = AsyncAttachmentsClient(client_wrapper=self._client_wrapper)
402
+ return self._attachments
403
+
404
+ @property
405
+ def audit_trail(self):
406
+ if self._audit_trail is None:
407
+ from .resources.audit_trail.client import AsyncAuditTrailClient # noqa: E402
408
+
409
+ self._audit_trail = AsyncAuditTrailClient(client_wrapper=self._client_wrapper)
410
+ return self._audit_trail
411
+
412
+ @property
413
+ def available_actions(self):
414
+ if self._available_actions is None:
415
+ from .resources.available_actions.client import AsyncAvailableActionsClient # noqa: E402
416
+
417
+ self._available_actions = AsyncAvailableActionsClient(client_wrapper=self._client_wrapper)
418
+ return self._available_actions
419
+
420
+ @property
421
+ def collections(self):
422
+ if self._collections is None:
423
+ from .resources.collections.client import AsyncCollectionsClient # noqa: E402
424
+
425
+ self._collections = AsyncCollectionsClient(client_wrapper=self._client_wrapper)
426
+ return self._collections
427
+
428
+ @property
429
+ def comments(self):
430
+ if self._comments is None:
431
+ from .resources.comments.client import AsyncCommentsClient # noqa: E402
432
+
433
+ self._comments = AsyncCommentsClient(client_wrapper=self._client_wrapper)
434
+ return self._comments
435
+
436
+ @property
437
+ def contacts(self):
438
+ if self._contacts is None:
439
+ from .resources.contacts.client import AsyncContactsClient # noqa: E402
440
+
441
+ self._contacts = AsyncContactsClient(client_wrapper=self._client_wrapper)
442
+ return self._contacts
443
+
444
+ @property
445
+ def scopes(self):
446
+ if self._scopes is None:
447
+ from .resources.scopes.client import AsyncScopesClient # noqa: E402
448
+
449
+ self._scopes = AsyncScopesClient(client_wrapper=self._client_wrapper)
450
+ return self._scopes
451
+
452
+ @property
453
+ def delete_account(self):
454
+ if self._delete_account is None:
455
+ from .resources.delete_account.client import AsyncDeleteAccountClient # noqa: E402
456
+
457
+ self._delete_account = AsyncDeleteAccountClient(client_wrapper=self._client_wrapper)
458
+ return self._delete_account
459
+
460
+ @property
461
+ def field_mapping(self):
462
+ if self._field_mapping is None:
463
+ from .resources.field_mapping.client import AsyncFieldMappingClient # noqa: E402
464
+
465
+ self._field_mapping = AsyncFieldMappingClient(client_wrapper=self._client_wrapper)
466
+ return self._field_mapping
467
+
468
+ @property
469
+ def generate_key(self):
470
+ if self._generate_key is None:
471
+ from .resources.generate_key.client import AsyncGenerateKeyClient # noqa: E402
472
+
473
+ self._generate_key = AsyncGenerateKeyClient(client_wrapper=self._client_wrapper)
474
+ return self._generate_key
475
+
476
+ @property
477
+ def issues(self):
478
+ if self._issues is None:
479
+ from .resources.issues.client import AsyncIssuesClient # noqa: E402
480
+
481
+ self._issues = AsyncIssuesClient(client_wrapper=self._client_wrapper)
482
+ return self._issues
483
+
484
+ @property
485
+ def link_token(self):
486
+ if self._link_token is None:
487
+ from .resources.link_token.client import AsyncLinkTokenClient # noqa: E402
488
+
489
+ self._link_token = AsyncLinkTokenClient(client_wrapper=self._client_wrapper)
490
+ return self._link_token
491
+
492
+ @property
493
+ def linked_accounts(self):
494
+ if self._linked_accounts is None:
495
+ from .resources.linked_accounts.client import AsyncLinkedAccountsClient # noqa: E402
496
+
497
+ self._linked_accounts = AsyncLinkedAccountsClient(client_wrapper=self._client_wrapper)
498
+ return self._linked_accounts
499
+
500
+ @property
501
+ def passthrough(self):
502
+ if self._passthrough is None:
503
+ self._passthrough = resources_ticketing_resources_passthrough_client_AsyncPassthroughClient(
504
+ client_wrapper=self._client_wrapper
505
+ )
506
+ return self._passthrough
507
+
508
+ @property
509
+ def projects(self):
510
+ if self._projects is None:
511
+ from .resources.projects.client import AsyncProjectsClient # noqa: E402
512
+
513
+ self._projects = AsyncProjectsClient(client_wrapper=self._client_wrapper)
514
+ return self._projects
515
+
516
+ @property
517
+ def regenerate_key(self):
518
+ if self._regenerate_key is None:
519
+ from .resources.regenerate_key.client import AsyncRegenerateKeyClient # noqa: E402
520
+
521
+ self._regenerate_key = AsyncRegenerateKeyClient(client_wrapper=self._client_wrapper)
522
+ return self._regenerate_key
523
+
524
+ @property
525
+ def roles(self):
526
+ if self._roles is None:
527
+ from .resources.roles.client import AsyncRolesClient # noqa: E402
528
+
529
+ self._roles = AsyncRolesClient(client_wrapper=self._client_wrapper)
530
+ return self._roles
531
+
532
+ @property
533
+ def sync_status(self):
534
+ if self._sync_status is None:
535
+ from .resources.sync_status.client import AsyncSyncStatusClient # noqa: E402
536
+
537
+ self._sync_status = AsyncSyncStatusClient(client_wrapper=self._client_wrapper)
538
+ return self._sync_status
539
+
540
+ @property
541
+ def force_resync(self):
542
+ if self._force_resync is None:
543
+ from .resources.force_resync.client import AsyncForceResyncClient # noqa: E402
544
+
545
+ self._force_resync = AsyncForceResyncClient(client_wrapper=self._client_wrapper)
546
+ return self._force_resync
547
+
548
+ @property
549
+ def tags(self):
550
+ if self._tags is None:
551
+ from .resources.tags.client import AsyncTagsClient # noqa: E402
552
+
553
+ self._tags = AsyncTagsClient(client_wrapper=self._client_wrapper)
554
+ return self._tags
555
+
556
+ @property
557
+ def teams(self):
558
+ if self._teams is None:
559
+ from .resources.teams.client import AsyncTeamsClient # noqa: E402
560
+
561
+ self._teams = AsyncTeamsClient(client_wrapper=self._client_wrapper)
562
+ return self._teams
563
+
564
+ @property
565
+ def tickets(self):
566
+ if self._tickets is None:
567
+ from .resources.tickets.client import AsyncTicketsClient # noqa: E402
568
+
569
+ self._tickets = AsyncTicketsClient(client_wrapper=self._client_wrapper)
570
+ return self._tickets
571
+
572
+ @property
573
+ def users(self):
574
+ if self._users is None:
575
+ from .resources.users.client import AsyncUsersClient # noqa: E402
576
+
577
+ self._users = AsyncUsersClient(client_wrapper=self._client_wrapper)
578
+ return self._users
579
+
580
+ @property
581
+ def webhook_receivers(self):
582
+ if self._webhook_receivers is None:
583
+ from .resources.webhook_receivers.client import AsyncWebhookReceiversClient # noqa: E402
584
+
585
+ self._webhook_receivers = AsyncWebhookReceiversClient(client_wrapper=self._client_wrapper)
586
+ return self._webhook_receivers