moovio_sdk 0.8.1__py3-none-any.whl → 0.9.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.
moovio_sdk/_version.py CHANGED
@@ -3,10 +3,10 @@
3
3
  import importlib.metadata
4
4
 
5
5
  __title__: str = "moovio_sdk"
6
- __version__: str = "0.8.1"
6
+ __version__: str = "0.9.0"
7
7
  __openapi_doc_version__: str = "latest"
8
- __gen_version__: str = "2.597.9"
9
- __user_agent__: str = "speakeasy-sdk/python 0.8.1 2.597.9 latest moovio_sdk"
8
+ __gen_version__: str = "2.599.0"
9
+ __user_agent__: str = "speakeasy-sdk/python 0.9.0 2.599.0 latest moovio_sdk"
10
10
 
11
11
  try:
12
12
  if __package__ is not None:
moovio_sdk/accounts.py CHANGED
@@ -13,7 +13,7 @@ class Accounts(BaseSDK):
13
13
  def create(
14
14
  self,
15
15
  *,
16
- account_type: components.AccountType,
16
+ account_type: components.CreateAccountType,
17
17
  profile: Union[components.CreateProfile, components.CreateProfileTypedDict],
18
18
  metadata: Optional[Dict[str, str]] = None,
19
19
  terms_of_service: Optional[
@@ -52,7 +52,7 @@ class Accounts(BaseSDK):
52
52
  To access this endpoint using an [access token](https://docs.moov.io/api/authentication/access-tokens/) you'll need
53
53
  to specify the `/accounts.write` scope.
54
54
 
55
- :param account_type: The type of entity represented by this account.
55
+ :param account_type:
56
56
  :param profile:
57
57
  :param metadata: Free-form key-value pair list. Useful for storing information that is not captured elsewhere.
58
58
  :param terms_of_service:
@@ -195,7 +195,7 @@ class Accounts(BaseSDK):
195
195
  async def create_async(
196
196
  self,
197
197
  *,
198
- account_type: components.AccountType,
198
+ account_type: components.CreateAccountType,
199
199
  profile: Union[components.CreateProfile, components.CreateProfileTypedDict],
200
200
  metadata: Optional[Dict[str, str]] = None,
201
201
  terms_of_service: Optional[
@@ -234,7 +234,7 @@ class Accounts(BaseSDK):
234
234
  To access this endpoint using an [access token](https://docs.moov.io/api/authentication/access-tokens/) you'll need
235
235
  to specify the `/accounts.write` scope.
236
236
 
237
- :param account_type: The type of entity represented by this account.
237
+ :param account_type:
238
238
  :param profile:
239
239
  :param metadata: Free-form key-value pair list. Useful for storing information that is not captured elsewhere.
240
240
  :param terms_of_service:
@@ -380,6 +380,7 @@ class Accounts(BaseSDK):
380
380
  name: Optional[str] = None,
381
381
  email: Optional[str] = None,
382
382
  type_: Optional[components.AccountType] = None,
383
+ include_guest: Optional[bool] = None,
383
384
  foreign_id: Optional[str] = None,
384
385
  include_disconnected: Optional[bool] = None,
385
386
  capability: Optional[components.CapabilityID] = None,
@@ -403,6 +404,7 @@ class Accounts(BaseSDK):
403
404
  :param name: Filter connected accounts by name. If provided, this query will attempt to find matches against the following Account and Profile fields: <ul> <li>Account `displayName`</li> <li>Individual Profile `firstName`, `middleName`, and `lastName`</li> <li>Business Profile `legalBusinessName`</li> </ul>
404
405
  :param email: Filter connected accounts by email address. Provide the full email address to filter by email.
405
406
  :param type: Filter connected accounts by AccountType. If the `type` parameter is used in combination with `name`, only the corresponding type's name fields will be searched. For example, if `type=business` and `name=moov`, the search will attempt to find matches against the display name and Business Profile name fields (`legalBusinessName`, and `doingBusinessAs`).
407
+ :param include_guest: Filter accounts with AccountType guest. If true, the response will include guest accounts.
406
408
  :param foreign_id: Serves as an optional alias from a foreign/external system which can be used to reference this resource.
407
409
  :param include_disconnected: Filter disconnected accounts. If true, the response will include disconnected accounts.
408
410
  :param capability: Filter connected accounts by the capability.
@@ -428,6 +430,7 @@ class Accounts(BaseSDK):
428
430
  name=name,
429
431
  email=email,
430
432
  type=type_,
433
+ include_guest=include_guest,
431
434
  foreign_id=foreign_id,
432
435
  include_disconnected=include_disconnected,
433
436
  capability=capability,
@@ -518,6 +521,7 @@ class Accounts(BaseSDK):
518
521
  name: Optional[str] = None,
519
522
  email: Optional[str] = None,
520
523
  type_: Optional[components.AccountType] = None,
524
+ include_guest: Optional[bool] = None,
521
525
  foreign_id: Optional[str] = None,
522
526
  include_disconnected: Optional[bool] = None,
523
527
  capability: Optional[components.CapabilityID] = None,
@@ -541,6 +545,7 @@ class Accounts(BaseSDK):
541
545
  :param name: Filter connected accounts by name. If provided, this query will attempt to find matches against the following Account and Profile fields: <ul> <li>Account `displayName`</li> <li>Individual Profile `firstName`, `middleName`, and `lastName`</li> <li>Business Profile `legalBusinessName`</li> </ul>
542
546
  :param email: Filter connected accounts by email address. Provide the full email address to filter by email.
543
547
  :param type: Filter connected accounts by AccountType. If the `type` parameter is used in combination with `name`, only the corresponding type's name fields will be searched. For example, if `type=business` and `name=moov`, the search will attempt to find matches against the display name and Business Profile name fields (`legalBusinessName`, and `doingBusinessAs`).
548
+ :param include_guest: Filter accounts with AccountType guest. If true, the response will include guest accounts.
544
549
  :param foreign_id: Serves as an optional alias from a foreign/external system which can be used to reference this resource.
545
550
  :param include_disconnected: Filter disconnected accounts. If true, the response will include disconnected accounts.
546
551
  :param capability: Filter connected accounts by the capability.
@@ -566,6 +571,7 @@ class Accounts(BaseSDK):
566
571
  name=name,
567
572
  email=email,
568
573
  type=type_,
574
+ include_guest=include_guest,
569
575
  foreign_id=foreign_id,
570
576
  include_disconnected=include_disconnected,
571
577
  capability=capability,
moovio_sdk/cards.py CHANGED
@@ -160,7 +160,7 @@ class Cards(BaseSDK):
160
160
  result=utils.unmarshal_json(http_res.text, components.Card),
161
161
  headers=utils.get_response_headers(http_res.headers),
162
162
  )
163
- if utils.match_response(http_res, ["400", "409"], "application/json"):
163
+ if utils.match_response(http_res, "400", "application/json"):
164
164
  response_data = utils.unmarshal_json(http_res.text, errors.GenericErrorData)
165
165
  raise errors.GenericError(data=response_data)
166
166
  if utils.match_response(http_res, "422", "application/json"):
@@ -168,7 +168,7 @@ class Cards(BaseSDK):
168
168
  http_res.text, errors.LinkCardErrorData
169
169
  )
170
170
  raise errors.LinkCardError(data=response_data)
171
- if utils.match_response(http_res, ["401", "403", "404", "429"], "*"):
171
+ if utils.match_response(http_res, ["401", "403", "404", "409", "429"], "*"):
172
172
  http_res_text = utils.stream_to_text(http_res)
173
173
  raise errors.APIError(
174
174
  "API error occurred", http_res.status_code, http_res_text, http_res
@@ -348,7 +348,7 @@ class Cards(BaseSDK):
348
348
  result=utils.unmarshal_json(http_res.text, components.Card),
349
349
  headers=utils.get_response_headers(http_res.headers),
350
350
  )
351
- if utils.match_response(http_res, ["400", "409"], "application/json"):
351
+ if utils.match_response(http_res, "400", "application/json"):
352
352
  response_data = utils.unmarshal_json(http_res.text, errors.GenericErrorData)
353
353
  raise errors.GenericError(data=response_data)
354
354
  if utils.match_response(http_res, "422", "application/json"):
@@ -356,7 +356,7 @@ class Cards(BaseSDK):
356
356
  http_res.text, errors.LinkCardErrorData
357
357
  )
358
358
  raise errors.LinkCardError(data=response_data)
359
- if utils.match_response(http_res, ["401", "403", "404", "429"], "*"):
359
+ if utils.match_response(http_res, ["401", "403", "404", "409", "429"], "*"):
360
360
  http_res_text = await utils.stream_to_text_async(http_res)
361
361
  raise errors.APIError(
362
362
  "API error occurred", http_res.status_code, http_res_text, http_res
moovio_sdk/httpclient.py CHANGED
@@ -2,7 +2,6 @@
2
2
 
3
3
  # pyright: reportReturnType = false
4
4
  import asyncio
5
- from concurrent.futures import ThreadPoolExecutor
6
5
  from typing_extensions import Protocol, runtime_checkable
7
6
  import httpx
8
7
  from typing import Any, Optional, Union
@@ -116,21 +115,42 @@ def close_clients(
116
115
  pass
117
116
 
118
117
  if async_client is not None and not async_client_supplied:
119
- is_async = False
118
+ # First, try the simplest approach - use asyncio.run()
119
+ # This works when we're not in an async context
120
120
  try:
121
- asyncio.get_running_loop()
122
- is_async = True
123
- except RuntimeError:
124
- pass
125
-
126
- try:
127
- # If this function is called in an async loop then start another
128
- # loop in a separate thread to close the async http client.
129
- if is_async:
130
- with ThreadPoolExecutor(max_workers=1) as executor:
131
- future = executor.submit(asyncio.run, async_client.aclose())
132
- future.result()
121
+ asyncio.run(async_client.aclose())
122
+ except RuntimeError as e:
123
+ # If we get "RuntimeError: This event loop is already running",
124
+ # it means we're in an async context
125
+ if "already running" in str(e):
126
+ try:
127
+ # We're in an async context, so get the running loop
128
+ loop = asyncio.get_running_loop()
129
+ # Create a task but don't wait for it
130
+ loop.create_task(async_client.aclose())
131
+ except Exception:
132
+ # If we can't get the loop or create a task, just ignore
133
+ # The GC will eventually clean up the resources
134
+ pass
135
+ # If we get "RuntimeError: There is no current event loop in thread",
136
+ # we're not in an async context, but asyncio.run() failed for some reason
137
+ # In this case, we can try to create a new event loop explicitly
138
+ elif "no current event loop" in str(e):
139
+ try:
140
+ # Create a new event loop and run the coroutine
141
+ loop = asyncio.new_event_loop()
142
+ asyncio.set_event_loop(loop)
143
+ try:
144
+ loop.run_until_complete(async_client.aclose())
145
+ finally:
146
+ loop.close()
147
+ asyncio.set_event_loop(None)
148
+ except Exception:
149
+ # If this also fails, just ignore
150
+ pass
151
+ # For any other RuntimeError, just ignore
133
152
  else:
134
- asyncio.run(async_client.aclose())
153
+ pass
135
154
  except Exception:
155
+ # For any other exception, just ignore
136
156
  pass
@@ -188,6 +188,7 @@ from .createaccountsettings import (
188
188
  CreateAccountSettings,
189
189
  CreateAccountSettingsTypedDict,
190
190
  )
191
+ from .createaccounttype import CreateAccountType
191
192
  from .createapplepaysession import CreateApplePaySession, CreateApplePaySessionTypedDict
192
193
  from .createauthorizeduser import CreateAuthorizedUser, CreateAuthorizedUserTypedDict
193
194
  from .createauthorizedusererror import (
@@ -367,6 +368,7 @@ from .governmentiderror import (
367
368
  GovernmentIDErrorTypedDict,
368
369
  )
369
370
  from .granttype import GrantType
371
+ from .guestprofile import GuestProfile, GuestProfileTypedDict
370
372
  from .incurredfee import IncurredFee, IncurredFeeTypedDict
371
373
  from .individualname import IndividualName, IndividualNameTypedDict
372
374
  from .individualnameerror import IndividualNameError, IndividualNameErrorTypedDict
@@ -1048,6 +1050,7 @@ __all__ = [
1048
1050
  "CreateAccountSettingsTypedDict",
1049
1051
  "CreateAccountTermsOfService",
1050
1052
  "CreateAccountTermsOfServiceTypedDict",
1053
+ "CreateAccountType",
1051
1054
  "CreateAccountTypedDict",
1052
1055
  "CreateApplePaySession",
1053
1056
  "CreateApplePaySessionTypedDict",
@@ -1220,6 +1223,8 @@ __all__ = [
1220
1223
  "GovernmentIDErrorTypedDict",
1221
1224
  "GovernmentIDTypedDict",
1222
1225
  "GrantType",
1226
+ "GuestProfile",
1227
+ "GuestProfileTypedDict",
1223
1228
  "IncurredFee",
1224
1229
  "IncurredFeeTypedDict",
1225
1230
  "IndividualName",
@@ -9,3 +9,4 @@ class AccountType(str, Enum):
9
9
 
10
10
  INDIVIDUAL = "individual"
11
11
  BUSINESS = "business"
12
+ GUEST = "guest"
@@ -9,3 +9,4 @@ class BankAccountHolderType(str, Enum):
9
9
 
10
10
  INDIVIDUAL = "individual"
11
11
  BUSINESS = "business"
12
+ GUEST = "guest"
@@ -1,8 +1,8 @@
1
1
  """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
2
2
 
3
3
  from __future__ import annotations
4
- from .accounttype import AccountType
5
4
  from .capabilityid import CapabilityID
5
+ from .createaccounttype import CreateAccountType
6
6
  from .createprofile import CreateProfile, CreateProfileTypedDict
7
7
  from .customersupport import CustomerSupport, CustomerSupportTypedDict
8
8
  from .manualtermsofservice import ManualTermsOfService, ManualTermsOfServiceTypedDict
@@ -27,8 +27,7 @@ CreateAccountTermsOfService = TypeAliasType(
27
27
 
28
28
 
29
29
  class CreateAccountTypedDict(TypedDict):
30
- account_type: AccountType
31
- r"""The type of entity represented by this account."""
30
+ account_type: CreateAccountType
32
31
  profile: CreateProfileTypedDict
33
32
  metadata: NotRequired[Dict[str, str]]
34
33
  r"""Free-form key-value pair list. Useful for storing information that is not captured elsewhere."""
@@ -47,8 +46,7 @@ class CreateAccountTypedDict(TypedDict):
47
46
 
48
47
 
49
48
  class CreateAccount(BaseModel):
50
- account_type: Annotated[AccountType, pydantic.Field(alias="accountType")]
51
- r"""The type of entity represented by this account."""
49
+ account_type: Annotated[CreateAccountType, pydantic.Field(alias="accountType")]
52
50
 
53
51
  profile: CreateProfile
54
52
 
@@ -0,0 +1,9 @@
1
+ """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
2
+
3
+ from __future__ import annotations
4
+ from enum import Enum
5
+
6
+
7
+ class CreateAccountType(str, Enum):
8
+ INDIVIDUAL = "individual"
9
+ BUSINESS = "business"
@@ -0,0 +1,31 @@
1
+ """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
2
+
3
+ from __future__ import annotations
4
+ from .phonenumber import PhoneNumber, PhoneNumberTypedDict
5
+ from moovio_sdk.types import BaseModel
6
+ from typing import Optional
7
+ from typing_extensions import NotRequired, TypedDict
8
+
9
+
10
+ class GuestProfileTypedDict(TypedDict):
11
+ r"""Describes a guest account profile."""
12
+
13
+ name: str
14
+ r"""The name associated with the guest account.
15
+ This will default to \"Guest {accountIDfirst8}\" if no other name is provided.
16
+ """
17
+ phone: NotRequired[PhoneNumberTypedDict]
18
+ email: NotRequired[str]
19
+
20
+
21
+ class GuestProfile(BaseModel):
22
+ r"""Describes a guest account profile."""
23
+
24
+ name: str
25
+ r"""The name associated with the guest account.
26
+ This will default to \"Guest {accountIDfirst8}\" if no other name is provided.
27
+ """
28
+
29
+ phone: Optional[PhoneNumber] = None
30
+
31
+ email: Optional[str] = None
@@ -2,6 +2,7 @@
2
2
 
3
3
  from __future__ import annotations
4
4
  from .businessprofile import BusinessProfile, BusinessProfileTypedDict
5
+ from .guestprofile import GuestProfile, GuestProfileTypedDict
5
6
  from .individualprofile import IndividualProfile, IndividualProfileTypedDict
6
7
  from moovio_sdk.types import BaseModel
7
8
  from typing import Optional
@@ -15,6 +16,8 @@ class ProfileTypedDict(TypedDict):
15
16
  r"""Describes an individual."""
16
17
  business: NotRequired[BusinessProfileTypedDict]
17
18
  r"""Describes a business."""
19
+ guest: NotRequired[GuestProfileTypedDict]
20
+ r"""Describes a guest account profile."""
18
21
 
19
22
 
20
23
  class Profile(BaseModel):
@@ -25,3 +28,6 @@ class Profile(BaseModel):
25
28
 
26
29
  business: Optional[BusinessProfile] = None
27
30
  r"""Describes a business."""
31
+
32
+ guest: Optional[GuestProfile] = None
33
+ r"""Describes a guest account profile."""
@@ -56,7 +56,7 @@ class CreateTransferRequestTypedDict(TypedDict):
56
56
  x_idempotency_key: str
57
57
  r"""Prevents duplicate transfers from being created."""
58
58
  account_id: str
59
- r"""The merchant's Moov account ID."""
59
+ r"""Your Moov account ID."""
60
60
  create_transfer: components_createtransfer.CreateTransferTypedDict
61
61
  x_wait_for: NotRequired[components_transferwaitfor.TransferWaitFor]
62
62
  r"""Optional header that indicates whether to return a synchronous response that includes full transfer and rail-specific details or an
@@ -77,7 +77,7 @@ class CreateTransferRequest(BaseModel):
77
77
  pydantic.Field(alias="accountID"),
78
78
  FieldMetadata(path=PathParamMetadata(style="simple", explode=False)),
79
79
  ]
80
- r"""The merchant's Moov account ID."""
80
+ r"""Your Moov account ID."""
81
81
 
82
82
  create_transfer: Annotated[
83
83
  components_createtransfer.CreateTransfer,
@@ -69,6 +69,11 @@ class ListAccountsRequestTypedDict(TypedDict):
69
69
  be searched. For example, if `type=business` and `name=moov`, the search will attempt to find matches against
70
70
  the display name and Business Profile name fields (`legalBusinessName`, and `doingBusinessAs`).
71
71
  """
72
+ include_guest: NotRequired[bool]
73
+ r"""Filter accounts with AccountType guest.
74
+
75
+ If true, the response will include guest accounts.
76
+ """
72
77
  foreign_id: NotRequired[str]
73
78
  r"""Serves as an optional alias from a foreign/external system which can be used to reference this resource."""
74
79
  include_disconnected: NotRequired[bool]
@@ -119,6 +124,16 @@ class ListAccountsRequest(BaseModel):
119
124
  the display name and Business Profile name fields (`legalBusinessName`, and `doingBusinessAs`).
120
125
  """
121
126
 
127
+ include_guest: Annotated[
128
+ Optional[bool],
129
+ pydantic.Field(alias="includeGuest"),
130
+ FieldMetadata(query=QueryParamMetadata(style="form", explode=False)),
131
+ ] = None
132
+ r"""Filter accounts with AccountType guest.
133
+
134
+ If true, the response will include guest accounts.
135
+ """
136
+
122
137
  foreign_id: Annotated[
123
138
  Optional[str],
124
139
  pydantic.Field(alias="foreignID"),
moovio_sdk/transfers.py CHANGED
@@ -46,7 +46,7 @@ class Transfers(BaseSDK):
46
46
  you'll need to specify the `/accounts/{accountID}/transfers.write` scope.
47
47
 
48
48
  :param x_idempotency_key: Prevents duplicate transfers from being created.
49
- :param account_id: The merchant's Moov account ID.
49
+ :param account_id: Your Moov account ID.
50
50
  :param source: Where funds for a transfer originate. For the source, you must include either a `paymentMethodID` or a `transferID`.
51
51
  :param destination: The final stage of a transfer and the ultimate recipient of the funds.
52
52
  :param amount:
@@ -239,7 +239,7 @@ class Transfers(BaseSDK):
239
239
  you'll need to specify the `/accounts/{accountID}/transfers.write` scope.
240
240
 
241
241
  :param x_idempotency_key: Prevents duplicate transfers from being created.
242
- :param account_id: The merchant's Moov account ID.
242
+ :param account_id: Your Moov account ID.
243
243
  :param source: Where funds for a transfer originate. For the source, you must include either a `paymentMethodID` or a `transferID`.
244
244
  :param destination: The final stage of a transfer and the ultimate recipient of the funds.
245
245
  :param amount:
@@ -1,11 +1,10 @@
1
1
  Metadata-Version: 2.3
2
2
  Name: moovio_sdk
3
- Version: 0.8.1
3
+ Version: 0.9.0
4
4
  Summary: Python Client SDK Generated by Speakeasy.
5
5
  Author: Speakeasy
6
- Requires-Python: >=3.9
6
+ Requires-Python: >=3.9.2
7
7
  Classifier: Programming Language :: Python :: 3
8
- Classifier: Programming Language :: Python :: 3.9
9
8
  Classifier: Programming Language :: Python :: 3.10
10
9
  Classifier: Programming Language :: Python :: 3.11
11
10
  Classifier: Programming Language :: Python :: 3.12
@@ -145,7 +144,7 @@ with Moov(
145
144
  ),
146
145
  ) as moov:
147
146
 
148
- res = moov.accounts.create(account_type=components.AccountType.BUSINESS, profile=components.CreateProfile(
147
+ res = moov.accounts.create(account_type=components.CreateAccountType.BUSINESS, profile=components.CreateProfile(
149
148
  individual=components.CreateIndividualProfile(
150
149
  name=components.IndividualName(
151
150
  first_name="Jordan",
@@ -249,7 +248,7 @@ async def main():
249
248
  ),
250
249
  ) as moov:
251
250
 
252
- res = await moov.accounts.create_async(account_type=components.AccountType.BUSINESS, profile=components.CreateProfile(
251
+ res = await moov.accounts.create_async(account_type=components.CreateAccountType.BUSINESS, profile=components.CreateProfile(
253
252
  individual=components.CreateIndividualProfile(
254
253
  name=components.IndividualName(
255
254
  first_name="Jordan",
@@ -362,7 +361,7 @@ with Moov(
362
361
  ),
363
362
  ) as moov:
364
363
 
365
- res = moov.accounts.create(account_type=components.AccountType.BUSINESS, profile=components.CreateProfile(
364
+ res = moov.accounts.create(account_type=components.CreateAccountType.BUSINESS, profile=components.CreateProfile(
366
365
  individual=components.CreateIndividualProfile(
367
366
  name=components.IndividualName(
368
367
  first_name="Jordan",
@@ -1352,7 +1351,7 @@ with Moov(
1352
1351
  ),
1353
1352
  ) as moov:
1354
1353
 
1355
- res = moov.accounts.create(account_type=components.AccountType.BUSINESS, profile=components.CreateProfile(
1354
+ res = moov.accounts.create(account_type=components.CreateAccountType.BUSINESS, profile=components.CreateProfile(
1356
1355
  individual=components.CreateIndividualProfile(
1357
1356
  name=components.IndividualName(
1358
1357
  first_name="Jordan",
@@ -1455,7 +1454,7 @@ with Moov(
1455
1454
  ),
1456
1455
  ) as moov:
1457
1456
 
1458
- res = moov.accounts.create(account_type=components.AccountType.BUSINESS, profile=components.CreateProfile(
1457
+ res = moov.accounts.create(account_type=components.CreateAccountType.BUSINESS, profile=components.CreateProfile(
1459
1458
  individual=components.CreateIndividualProfile(
1460
1459
  name=components.IndividualName(
1461
1460
  first_name="Jordan",
@@ -1581,7 +1580,7 @@ with Moov(
1581
1580
  res = None
1582
1581
  try:
1583
1582
 
1584
- res = moov.accounts.create(account_type=components.AccountType.BUSINESS, profile=components.CreateProfile(
1583
+ res = moov.accounts.create(account_type=components.CreateAccountType.BUSINESS, profile=components.CreateProfile(
1585
1584
  individual=components.CreateIndividualProfile(
1586
1585
  name=components.IndividualName(
1587
1586
  first_name="Jordan",
@@ -1697,7 +1696,7 @@ with Moov(
1697
1696
  ),
1698
1697
  ) as moov:
1699
1698
 
1700
- res = moov.accounts.create(account_type=components.AccountType.BUSINESS, profile=components.CreateProfile(
1699
+ res = moov.accounts.create(account_type=components.CreateAccountType.BUSINESS, profile=components.CreateProfile(
1701
1700
  individual=components.CreateIndividualProfile(
1702
1701
  name=components.IndividualName(
1703
1702
  first_name="Jordan",
@@ -3,9 +3,9 @@ moovio_sdk/_hooks/__init__.py,sha256=9_7W5jAYw8rcO8Kfc-Ty-lB82BHfksAJJpVFb_UeU1c
3
3
  moovio_sdk/_hooks/registration.py,sha256=1QZB41w6If7I9dXiOSQx6dhSc6BPWrnI5Q5bMOr4iVA,624
4
4
  moovio_sdk/_hooks/sdkhooks.py,sha256=2XuMgiV2N7UE7lN00Is-c3spxVWigYitXS6xSmS_Qow,2560
5
5
  moovio_sdk/_hooks/types.py,sha256=xAyw_8EoIrUHL-zLoqXrogOkBq1ZFICNGZfp9xne2ww,2813
6
- moovio_sdk/_version.py,sha256=HYouk_8eh-kJe9tuakUaS9sPebDmYyKSUqWqEt-vRFU,464
6
+ moovio_sdk/_version.py,sha256=DiDz2YwRITb8bamvuyaWDPjegukajanGb5uTmjZhGZM,464
7
7
  moovio_sdk/account_terminal_applications.py,sha256=7Td1lpM3mqBQGPLoU5fLWZKRII1CjWikuUdD5bll4NI,41863
8
- moovio_sdk/accounts.py,sha256=owJJuChHd-iucAiR4JWlaMYD1oKvjzCYSO6rckje6vs,107907
8
+ moovio_sdk/accounts.py,sha256=wMrhNHl6SDhKp8TSFXkpRupPljkxphDojVus8erk2PU,108249
9
9
  moovio_sdk/adjustments.py,sha256=m7S8Vn0KB4bMaTQTX50sCPvNZr72kjA6DTLxeJ2U-fc,19272
10
10
  moovio_sdk/apple_pay.py,sha256=D5agY7yrZrZEtuadtY0_oQq3bSRpTy_bUG90T0iXDck,60723
11
11
  moovio_sdk/authentication.py,sha256=UUAqGwjHhv1H7QD6I4cUaFhZIUQFzCuBGk2sNuISHbE,23802
@@ -15,24 +15,24 @@ moovio_sdk/basesdk.py,sha256=cLruVIfCxE4ErFOhIFyPQX0enkJetyCIjzsfo_YvNXA,12239
15
15
  moovio_sdk/branding.py,sha256=suNLnzLwtzqWXD1XHVkukc3GL6j0icoAGY6EB3lKadA,44607
16
16
  moovio_sdk/capabilities.py,sha256=kOkkm3z4TKbebH_YxSb9vJZPzAgO8_Z3wkdIqEE3Cx4,42758
17
17
  moovio_sdk/card_issuing.py,sha256=ivtve-6ku-VDGCM50F0QIQlKfdk0-x6o-ABCE6PySCs,58006
18
- moovio_sdk/cards.py,sha256=K_cuLxxqcmtmdkn5AwFSn6yk-itkVbLgsTm5g5XE2lc,63144
18
+ moovio_sdk/cards.py,sha256=d18Lswxj5BX8W8M6Dy9MUcdUhrY2p11tvuSsodg7Ir4,63140
19
19
  moovio_sdk/disputes.py,sha256=D3ub4dQaamrDccjz2DzeIOpnrbM4yd607Y4xtd846e8,125051
20
20
  moovio_sdk/end_to_end_encryption.py,sha256=1pTy0tnYjXSBRBd5T_oDl37zj8vIcN2l59ExsPpsPOY,19256
21
21
  moovio_sdk/enriched_address.py,sha256=mQSh_xid5zmLoFvs1cNQ-v2I5xvC1YxBqgi_TgUo2Po,14800
22
22
  moovio_sdk/enriched_profile.py,sha256=rKzUQKvfOm7UHAWengfXZAw6iQoz0UoftEzUOfOlWTk,9794
23
23
  moovio_sdk/fee_plans.py,sha256=tj1ecxF97VyIA3Ca-Ti_t8GJsQnYWogGYWMAg1FUUME,73756
24
24
  moovio_sdk/files.py,sha256=YE2CytR7qtBFuTPuSFMeP0b2TuM71a0hRZoUVw3c1KU,32142
25
- moovio_sdk/httpclient.py,sha256=lC-YQ7q4yiJGKElxBeb3aZnr-4aYxjgEpZ6roeXYlyg,4318
25
+ moovio_sdk/httpclient.py,sha256=xAUX3nxG-fwYAE9lfv9uaspYKMFRJf5NM79mV2HKb1I,5486
26
26
  moovio_sdk/industries.py,sha256=7VputoHEST4GXazczXDWEYsSkfWkFJaTSXAEDx267Vo,10245
27
27
  moovio_sdk/institutions.py,sha256=1CjxrmzYf0tAs2beUyYiVPO9w8jibwG-Ya9ifXifUG8,11238
28
28
  moovio_sdk/issuing_transactions.py,sha256=ftaJUPR8vGuNVOf3oWgecZG7DQSYRZiHZTtRfXMacgc,53212
29
29
  moovio_sdk/models/__init__.py,sha256=HRiFG5CV9y2HvWWQl_JQNbYTPme0UYR1Mhh13Qc-5jE,84
30
- moovio_sdk/models/components/__init__.py,sha256=OwEqGoXVRv9IwLWZifM6s9onf0mK92D96Kldl8QGr3w,58968
30
+ moovio_sdk/models/components/__init__.py,sha256=9Vv_zRytls7mdEYUyjuv-IgzUyWp7XLoe8WCN0a0sbw,59153
31
31
  moovio_sdk/models/components/account.py,sha256=QejMoPHYyHF-6TRrUVKYyfD_6Qbl7lFVOEaE8zlOgmI,4181
32
32
  moovio_sdk/models/components/accountcapability.py,sha256=LJ908Zr4lw2qtMwUMLWoscTUjj5wV7YlZ4Z0Vv_abjg,527
33
33
  moovio_sdk/models/components/accountcountries.py,sha256=sI1VAu3PqS2HTOarkT7f6FbkgUT55NL57PvAZKcbRHw,456
34
34
  moovio_sdk/models/components/accountnameverification.py,sha256=o8lJpciQptXMcqtHiXlHKlb8cGV1P5e1M-f60bI0A_4,1263
35
- moovio_sdk/models/components/accounttype.py,sha256=ukVjrQwv4v1DTQipeAVfmVqwq51e8qxal4l4sIlzT9I,278
35
+ moovio_sdk/models/components/accounttype.py,sha256=4TgQiMV_D6imwa3sGEzywwb4ebLxVvHdrnRrq_HOPd4,298
36
36
  moovio_sdk/models/components/accountverificationstatus.py,sha256=y-K1sLUjsHJDvYNFR0bvbf8gutiiZy4vrUXYXuX28hw,570
37
37
  moovio_sdk/models/components/achcreditsamedaypaymentmethod.py,sha256=rTzVE1ZG56HhSWEpozrCz-qMWuCyZdIYFNwLxePyjtk,1264
38
38
  moovio_sdk/models/components/achcreditstandardpaymentmethod.py,sha256=WFJGhW0XDs6fXB99lHjU_VmTsGLM-4OAlYpdSl4MHrM,1269
@@ -70,7 +70,7 @@ moovio_sdk/models/components/authtoken.py,sha256=0s9C-q8s6clVMVmCAfRvlM0_SXdKqQ0
70
70
  moovio_sdk/models/components/authtokenrequest.py,sha256=m9p3exncjy13k0bpeNCIyPchm9o_15i1ImIuhwmsyEU,2231
71
71
  moovio_sdk/models/components/bankaccount.py,sha256=1YKOVySbAWx0PQW4eMIj2ujmCQUN1NoSeacjowKR2K4,3966
72
72
  moovio_sdk/models/components/bankaccountexception.py,sha256=EMv8fR_Zgbgz3h6ZMTQLKSiASjUSPH0GKI4SKojQGRM,3972
73
- moovio_sdk/models/components/bankaccountholdertype.py,sha256=Z-QXJjwuIkcUENdbxCJxyx3aCbWNqqfahnzZx-8qUkM,280
73
+ moovio_sdk/models/components/bankaccountholdertype.py,sha256=wYxX5Ytun1vKdZY81XAiTlKXGj0KagspJfC6xn5l0Ws,300
74
74
  moovio_sdk/models/components/bankaccountintegration.py,sha256=Yhyg5wz5hl8zNl7c0Ppwej4D7djadm1ISqtoI8E7IXA,1139
75
75
  moovio_sdk/models/components/bankaccountpayload.py,sha256=KyDbvi3kvKfn9Q9QHXU_zWzZN9SNhwtAhxpmmxAURcE,596
76
76
  moovio_sdk/models/components/bankaccountstatus.py,sha256=1mMmzdxVjPq5akdu7jqKTylf2cM4bbDdtW68tfyBzX4,305
@@ -131,9 +131,10 @@ moovio_sdk/models/components/completebankaccountverification.py,sha256=lkKTBvwBD
131
131
  moovio_sdk/models/components/completedmicrodeposits.py,sha256=HKa1agwiNZuBX8PbVxt3JANnmDbUPyyizWc825fgopg,395
132
132
  moovio_sdk/models/components/completemicrodeposits.py,sha256=POm5oRn9d3RKRr6hfaqRBYm3v38KYZ8A1i0OMpFN_rE,720
133
133
  moovio_sdk/models/components/countrieserrors.py,sha256=Dti0Kd5Z3IXq4de3BfQxXOQbT989RU43ZI62WSztsEA,352
134
- moovio_sdk/models/components/createaccount.py,sha256=QLyXVV0zSRwlOWVNClIvKkDZ04tZtUPI0WswdOsWzeE,3296
134
+ moovio_sdk/models/components/createaccount.py,sha256=E4Csx_VK6kkIOLksGmhFzrVd-LwzpIQCujLv3LyBPws,3202
135
135
  moovio_sdk/models/components/createaccounterror.py,sha256=ZvhavI3PIu-dzPGS3Zr2rgQVXYzvd4-Jsm9aoh05w30,1686
136
136
  moovio_sdk/models/components/createaccountsettings.py,sha256=1ob3YFYjtQbQYNxpdB4dvRCoHK5CG1JYaeJGadWjhoA,1094
137
+ moovio_sdk/models/components/createaccounttype.py,sha256=pIjmayXMBjCXC2s7EnYnt4QPatOb6BkLJO4PwUYKrzk,224
137
138
  moovio_sdk/models/components/createapplepaysession.py,sha256=KMa_qsK3pHG22Oe7VT5_MYrhdPHhqodllaG1QU1xe4I,786
138
139
  moovio_sdk/models/components/createauthorizeduser.py,sha256=jW04f6luiW5AuqSIpDARSEw5_iaMbc0EOM7VuDowmw4,829
139
140
  moovio_sdk/models/components/createauthorizedusererror.py,sha256=esLjn87FfadlgHbgqcI16pedYvyKQGWvgY_lxb1ofQ4,816
@@ -214,6 +215,7 @@ moovio_sdk/models/components/generatedbytransferid.py,sha256=M64GIsjG7ZDg7i84-nX
214
215
  moovio_sdk/models/components/governmentid.py,sha256=33k1CxMiMxiclwQ2GVEwJcBcyAEMcvEErZM1RTOMJvk,925
215
216
  moovio_sdk/models/components/governmentiderror.py,sha256=oQM3JAM3G3Mxt4w5yRNNPpw1FIeobc44GbKhvgTqKZo,1071
216
217
  moovio_sdk/models/components/granttype.py,sha256=j7dVMjidy1nrWlSPTE7--_vTiqRTAH4F6xHub5kp78A,481
218
+ moovio_sdk/models/components/guestprofile.py,sha256=DqixB6MCi-Ihw1u5t7H4cGuD3ChBkJ1Z0r3opaNl5MQ,917
217
219
  moovio_sdk/models/components/incurredfee.py,sha256=aPTYTUICtts5sFinKIcRAD3hm78oJG7ZkS0GuCyovD0,1477
218
220
  moovio_sdk/models/components/individualname.py,sha256=RkigcoUQFs7SkLyhO4tTvmGH_6ny9muNlZgfnAfXtpM,1041
219
221
  moovio_sdk/models/components/individualnameerror.py,sha256=CAKDn7LAHNnRti82YPlOai0l9ELSZf_Ya_JFWyRdehY,757
@@ -299,7 +301,7 @@ moovio_sdk/models/components/plaidlinkintegration.py,sha256=jreTgs7hkUvBTE2I5j1A
299
301
  moovio_sdk/models/components/plaidlinkpayload.py,sha256=x7TV7dCNUoWoRE6oHiawYFuOIaiMzHfdDK9v1TI_1q0,2416
300
302
  moovio_sdk/models/components/plaidpayload.py,sha256=bF7vRUa3OdC6k4QZbkjXPYxL70EA0QgugQfHTFG-7eQ,1537
301
303
  moovio_sdk/models/components/primaryregulator.py,sha256=QONaef5YKnePrxVWo58UzwcHVCYXQV8OjsVPlSxpsnE,335
302
- moovio_sdk/models/components/profile.py,sha256=THhA_DCbNHRdJ5yMpmCtnyj2EjFLokYT_kWT-X4Lfws,1042
304
+ moovio_sdk/models/components/profile.py,sha256=o1JPQekbIGLugxafhoI4UL-7ZB1OSEPPESVihgAiRSI,1284
303
305
  moovio_sdk/models/components/pullfromcardpaymentmethod.py,sha256=LVhaRwsPrtQsBqjASPIzzGng3C6TDfdjq0FbjYV2ing,1092
304
306
  moovio_sdk/models/components/pushtocardpaymentmethod.py,sha256=gGNrMlhRS6Fyh3-L84Kp7iqEfTosffNeytNMfhr9__c,1078
305
307
  moovio_sdk/models/components/qrcode.py,sha256=-LlCqpYrlTWC6enlRJABOYcSpb8gSfHuBCQcGoASaqs,462
@@ -482,7 +484,7 @@ moovio_sdk/models/operations/createreversal.py,sha256=nQIIp68Itf7mtVTpeIDrDUZWsK
482
484
  moovio_sdk/models/operations/createschedule.py,sha256=vxJYRV6gAF6OuOCwZ8soVGHPNOaFNid_uofiphsYWsU,2751
483
485
  moovio_sdk/models/operations/createsweepconfig.py,sha256=mC-dbVIizvTJjYTygLrFOO-C9Uv8nMDlGrDfVboN6e8,2765
484
486
  moovio_sdk/models/operations/createterminalapplication.py,sha256=n7mnj-ixVXSV8El7dVhwueNm4Pd8xTiTefI1oayrIGE,2188
485
- moovio_sdk/models/operations/createtransfer.py,sha256=gkOOByWzgyFCYrAfBCbNc0YPIT3rUpnr4SdeRZi9I6g,4726
487
+ moovio_sdk/models/operations/createtransfer.py,sha256=UeGpxBVsHy_sES-xLfdAqNFXExQxYgbPIQOOlAItzcU,4706
486
488
  moovio_sdk/models/operations/createtransferoptions.py,sha256=DCrQtu3VPSdEOSt8gFnZHcCtRIN-c6NHBohifMolCzg,2139
487
489
  moovio_sdk/models/operations/deletedisputeevidencefile.py,sha256=NHUuvakVuXiCwqI_gDDgjhFAAfKypztOzasr0S78KQE,2648
488
490
  moovio_sdk/models/operations/deleterepresentative.py,sha256=H3bKQTMMsB9_wCqxfZqwgq-NljV5W-lGWzXIHEnxxv0,2582
@@ -540,7 +542,7 @@ moovio_sdk/models/operations/linkaccountterminalapplication.py,sha256=shc1xlTDSv
540
542
  moovio_sdk/models/operations/linkapplepaytoken.py,sha256=EvfviwK6pfngiD_aVYiieODw9AF8NmgSa1uMevCf9hA,2947
541
543
  moovio_sdk/models/operations/linkbankaccount.py,sha256=BlLa8ZqMjjEgJF083GE425l0Hu3ppivNWGYf3-p7vBw,3878
542
544
  moovio_sdk/models/operations/linkcard.py,sha256=-4Yi9kRAfHgMhPLNqZxAYjV8eh3P7VZYQb92xmqf7ug,3718
543
- moovio_sdk/models/operations/listaccounts.py,sha256=j1mplRYfzRIYNuxFUG7juJv6tOIO1XV91c3jRaq53es,6584
545
+ moovio_sdk/models/operations/listaccounts.py,sha256=iZI4YLYFTORaTQl5YB3O0W_IXBZHIoMPb4y_wgyv8CA,7037
544
546
  moovio_sdk/models/operations/listaccountterminalapplications.py,sha256=inDKgs9govCB0P7aT71OCJyjAe2jz_jsT0nO2HhWhL0,2557
545
547
  moovio_sdk/models/operations/listadjustments.py,sha256=zCe-wryS5XbW75HnaH5UYKovfkW9LiNiGhi6LjWVDtw,2752
546
548
  moovio_sdk/models/operations/listbankaccounts.py,sha256=wj8-E1aGn51EJBmdyxm97WEFJXIdxiHeAISmHKpRD4Q,2410
@@ -610,7 +612,7 @@ moovio_sdk/sdk.py,sha256=N_Qm-P2hwu_8VkrropsIpbHn8fOjfpp9mnDAb6mN1B8,10308
610
612
  moovio_sdk/sdkconfiguration.py,sha256=7NP1kNUcms-14o77cdoPmV7ZGWTtCLqqMTWN6pdwm-8,1822
611
613
  moovio_sdk/sweeps.py,sha256=6QLuQRTQRRQ3qRyG9ZBPz1fkK3tnZeRAg_0YK6Scdts,66711
612
614
  moovio_sdk/terminal_applications.py,sha256=lOnAQYqYRoNvE6c6p7YZi2OFeer8I27tQhtX5w6oyiY,42830
613
- moovio_sdk/transfers.py,sha256=aYGm2hNcuSgU0Z-iCxnRTQcT1NFo6wqewk6eyF9caPE,133138
615
+ moovio_sdk/transfers.py,sha256=SDTuvVr3jY56xeKKh51bfbFT66Ev0B0DPh3Uqw3dhHQ,133118
614
616
  moovio_sdk/types/__init__.py,sha256=RArOwSgeeTIva6h-4ttjXwMUeCkz10nAFBL9D-QljI4,377
615
617
  moovio_sdk/types/basemodel.py,sha256=L79WXvTECbSqaJzs8D3ud_KdIWkU7Cx2wbohDAktE9E,1127
616
618
  moovio_sdk/underwriting.py,sha256=Q3bOkxgz3syy6YgdTKK_DTAqK6lV_uawgVZZX3iPuqc,24353
@@ -632,6 +634,6 @@ moovio_sdk/utils/url.py,sha256=BgGPgcTA6MRK4bF8fjP2dUopN3NzEzxWMXPBVg8NQUA,5254
632
634
  moovio_sdk/utils/values.py,sha256=CcaCXEa3xHhkUDROyXZocN8f0bdITftv9Y0P9lTf0YM,3517
633
635
  moovio_sdk/wallet_transactions.py,sha256=gP5AYXIn4LkCtm1ncheuWGxZCK0d67b20UIDheo_Khg,24943
634
636
  moovio_sdk/wallets.py,sha256=5RcHiuHxBDi2YmK0V83s1hwEN-29aFar17LsQIYXpo0,19250
635
- moovio_sdk-0.8.1.dist-info/METADATA,sha256=zBiZk-8T8VvU-kEqDDDvcqU7n3OmJsC9JMcCSzqxnio,105386
636
- moovio_sdk-0.8.1.dist-info/WHEEL,sha256=b4K_helf-jlQoXBBETfwnf4B04YC67LOev0jo4fX5m8,88
637
- moovio_sdk-0.8.1.dist-info/RECORD,,
637
+ moovio_sdk-0.9.0.dist-info/METADATA,sha256=pZemo3COdsN1yFltfkyuOXMmGQfbc_AHt23oKgC_sh0,105380
638
+ moovio_sdk-0.9.0.dist-info/WHEEL,sha256=b4K_helf-jlQoXBBETfwnf4B04YC67LOev0jo4fX5m8,88
639
+ moovio_sdk-0.9.0.dist-info/RECORD,,