Skip to content

Commit 2a8daeb

Browse files
8.5.0
2 parents 0e2f9d9 + 5a118c5 commit 2a8daeb

18 files changed

+407
-14
lines changed

.openapi-generator/FILES

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -154,6 +154,7 @@ plaid/model/external_payment_refund_details.py
154154
plaid/model/external_payment_schedule_base.py
155155
plaid/model/external_payment_schedule_get.py
156156
plaid/model/external_payment_schedule_request.py
157+
plaid/model/fraud_attributes.py
157158
plaid/model/health_incident.py
158159
plaid/model/historical_balance.py
159160
plaid/model/historical_update_webhook.py
@@ -325,6 +326,7 @@ plaid/model/paystub_address.py
325326
plaid/model/paystub_deduction.py
326327
plaid/model/paystub_details.py
327328
plaid/model/paystub_employer.py
329+
plaid/model/paystub_fraud_verification.py
328330
plaid/model/paystub_override.py
329331
plaid/model/paystub_override_employee.py
330332
plaid/model/paystub_override_employee_address.py

CHANGELOG.md

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,8 @@
11
See full changelog for the OpenAPI Schema (OAS) [here](https://github.com/plaid/plaid-openapi/blob/master/CHANGELOG.md).
22

3+
## 8.5.0
4+
- Updating to OAS 2020-09-14_1.40.3
5+
36
## 8.4.0
47
- Updating to OAS 2020-09-14_1.36.1
58

plaid/__init__.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,7 @@
88
"""
99

1010

11-
__version__ = "8.4.0"
11+
__version__ = "8.5.0"
1212

1313
# import ApiClient
1414
from plaid.api_client import ApiClient

plaid/api/plaid_api.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -9856,7 +9856,7 @@ def __sandbox_public_token_create(
98569856
):
98579857
"""Create a test Item # noqa: E501
98589858
9859-
Use the `/sandbox/public_token/create` endpoint to create a valid `public_token` for an arbitrary institution ID, initial products, and test credentials. The created `public_token` maps to a new Sandbox Item. You can then call `/item/public_token/exchange` to exchange the `public_token` for an `access_token` and perform all API actions. `/sandbox/public_token/create` can also be used with the [`user_custom` test username](https://plaid.com/docs/sandbox/user-custom) to generate a test account with custom data. # noqa: E501
9859+
Use the `/sandbox/public_token/create` endpoint to create a valid `public_token` for an arbitrary institution ID, initial products, and test credentials. The created `public_token` maps to a new Sandbox Item. You can then call `/item/public_token/exchange` to exchange the `public_token` for an `access_token` and perform all API actions. `/sandbox/public_token/create` can also be used with the [`user_custom` test username](https://plaid.com/docs/sandbox/user-custom) to generate a test account with custom data. `/sandbox/public_token/create` cannot be used with OAuth institutions. # noqa: E501
98609860
This method makes a synchronous HTTP request by default. To make an
98619861
asynchronous HTTP request, please pass async_req=True
98629862

plaid/api_client.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -74,7 +74,7 @@ def __init__(self, configuration=None, header_name=None, header_value=None,
7474
self.default_headers[header_name] = header_value
7575
self.cookie = cookie
7676
# Set default User-Agent.
77-
self.user_agent = 'Plaid Python v8.4.0'
77+
self.user_agent = 'Plaid Python v8.5.0'
7878

7979
def __enter__(self):
8080
return self

plaid/configuration.py

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -427,8 +427,8 @@ def to_debug_report(self):
427427
return "Python SDK Debug Report:\n"\
428428
"OS: {env}\n"\
429429
"Python Version: {pyversion}\n"\
430-
"Version of the API: 2020-09-14_1.39.0\n"\
431-
"SDK Package Version: 8.4.0".\
430+
"Version of the API: 2020-09-14_1.40.3\n"\
431+
"SDK Package Version: 8.5.0".\
432432
format(env=sys.platform, pyversion=sys.version)
433433

434434
def get_host_settings(self):

plaid/model/account_subtype.py

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -105,7 +105,6 @@ class AccountSubtype(ModelSimple):
105105
'COMMERCIAL': "commercial",
106106
'CONSTRUCTION': "construction",
107107
'CONSUMER': "consumer",
108-
'HOME': "home",
109108
'HOME_EQUITY': "home equity",
110109
'LOAN': "loan",
111110
'MORTGAGE': "mortgage",
@@ -170,10 +169,10 @@ def __init__(self, *args, **kwargs):
170169
Note that value can be passed either in args or in kwargs, but not in both.
171170
172171
Args:
173-
args[0] (str): See the [Account type schema](https://plaid.com/docs/api/accounts/#account-type-schema) for a full listing of account types and corresponding subtypes.., must be one of ["401a", "401k", "403B", "457b", "529", "brokerage", "cash isa", "education savings account", "ebt", "fixed annuity", "gic", "health reimbursement arrangement", "hsa", "isa", "ira", "lif", "life insurance", "lira", "lrif", "lrsp", "non-taxable brokerage account", "other", "other insurance", "other annuity", "prif", "rdsp", "resp", "rlif", "rrif", "pension", "profit sharing plan", "retirement", "roth", "roth 401k", "rrsp", "sep ira", "simple ira", "sipp", "stock plan", "thrift savings plan", "tfsa", "trust", "ugma", "utma", "variable annuity", "credit card", "paypal", "cd", "checking", "savings", "money market", "prepaid", "auto", "business", "commercial", "construction", "consumer", "home", "home equity", "loan", "mortgage", "overdraft", "line of credit", "student", "cash management", "keogh", "mutual fund", "recurring", "rewards", "safe deposit", "sarsep", "payroll", "null", ] # noqa: E501
172+
args[0] (str): See the [Account type schema](https://plaid.com/docs/api/accounts/#account-type-schema) for a full listing of account types and corresponding subtypes.., must be one of ["401a", "401k", "403B", "457b", "529", "brokerage", "cash isa", "education savings account", "ebt", "fixed annuity", "gic", "health reimbursement arrangement", "hsa", "isa", "ira", "lif", "life insurance", "lira", "lrif", "lrsp", "non-taxable brokerage account", "other", "other insurance", "other annuity", "prif", "rdsp", "resp", "rlif", "rrif", "pension", "profit sharing plan", "retirement", "roth", "roth 401k", "rrsp", "sep ira", "simple ira", "sipp", "stock plan", "thrift savings plan", "tfsa", "trust", "ugma", "utma", "variable annuity", "credit card", "paypal", "cd", "checking", "savings", "money market", "prepaid", "auto", "business", "commercial", "construction", "consumer", "home equity", "loan", "mortgage", "overdraft", "line of credit", "student", "cash management", "keogh", "mutual fund", "recurring", "rewards", "safe deposit", "sarsep", "payroll", "null", ] # noqa: E501
174173
175174
Keyword Args:
176-
value (str): See the [Account type schema](https://plaid.com/docs/api/accounts/#account-type-schema) for a full listing of account types and corresponding subtypes.., must be one of ["401a", "401k", "403B", "457b", "529", "brokerage", "cash isa", "education savings account", "ebt", "fixed annuity", "gic", "health reimbursement arrangement", "hsa", "isa", "ira", "lif", "life insurance", "lira", "lrif", "lrsp", "non-taxable brokerage account", "other", "other insurance", "other annuity", "prif", "rdsp", "resp", "rlif", "rrif", "pension", "profit sharing plan", "retirement", "roth", "roth 401k", "rrsp", "sep ira", "simple ira", "sipp", "stock plan", "thrift savings plan", "tfsa", "trust", "ugma", "utma", "variable annuity", "credit card", "paypal", "cd", "checking", "savings", "money market", "prepaid", "auto", "business", "commercial", "construction", "consumer", "home", "home equity", "loan", "mortgage", "overdraft", "line of credit", "student", "cash management", "keogh", "mutual fund", "recurring", "rewards", "safe deposit", "sarsep", "payroll", "null", ] # noqa: E501
175+
value (str): See the [Account type schema](https://plaid.com/docs/api/accounts/#account-type-schema) for a full listing of account types and corresponding subtypes.., must be one of ["401a", "401k", "403B", "457b", "529", "brokerage", "cash isa", "education savings account", "ebt", "fixed annuity", "gic", "health reimbursement arrangement", "hsa", "isa", "ira", "lif", "life insurance", "lira", "lrif", "lrsp", "non-taxable brokerage account", "other", "other insurance", "other annuity", "prif", "rdsp", "resp", "rlif", "rrif", "pension", "profit sharing plan", "retirement", "roth", "roth 401k", "rrsp", "sep ira", "simple ira", "sipp", "stock plan", "thrift savings plan", "tfsa", "trust", "ugma", "utma", "variable annuity", "credit card", "paypal", "cd", "checking", "savings", "money market", "prepaid", "auto", "business", "commercial", "construction", "consumer", "home equity", "loan", "mortgage", "overdraft", "line of credit", "student", "cash management", "keogh", "mutual fund", "recurring", "rewards", "safe deposit", "sarsep", "payroll", "null", ] # noqa: E501
177176
_check_type (bool): if True, values for parameters in openapi_types
178177
will be type checked and a TypeError will be
179178
raised if the wrong type is input.

plaid/model/fraud_attributes.py

Lines changed: 179 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,179 @@
1+
"""
2+
The Plaid API
3+
4+
The Plaid REST API. Please see https://plaid.com/docs/api for more details. # noqa: E501
5+
Generated by: https://openapi-generator.tech
6+
"""
7+
8+
9+
import re # noqa: F401
10+
import sys # noqa: F401
11+
12+
from plaid.model_utils import ( # noqa: F401
13+
ApiTypeError,
14+
ModelComposed,
15+
ModelNormal,
16+
ModelSimple,
17+
cached_property,
18+
change_keys_js_to_python,
19+
convert_js_args_to_python_args,
20+
date,
21+
datetime,
22+
file_type,
23+
none_type,
24+
validate_get_composed_info,
25+
)
26+
27+
28+
class FraudAttributes(ModelNormal):
29+
"""NOTE: This class is auto generated by OpenAPI Generator.
30+
Ref: https://openapi-generator.tech
31+
32+
Do not edit the class manually.
33+
34+
Attributes:
35+
allowed_values (dict): The key is the tuple path to the attribute
36+
and the for var_name this is (var_name,). The value is a dict
37+
with a capitalized key describing the allowed value and an allowed
38+
value. These dicts store the allowed enum values.
39+
attribute_map (dict): The key is attribute name
40+
and the value is json key in definition.
41+
discriminator_value_class_map (dict): A dict to go from the discriminator
42+
variable value to the discriminator class name.
43+
validations (dict): The key is the tuple path to the attribute
44+
and the for var_name this is (var_name,). The value is a dict
45+
that stores validations for max_length, min_length, max_items,
46+
min_items, exclusive_maximum, inclusive_maximum, exclusive_minimum,
47+
inclusive_minimum, and regex.
48+
additional_properties_type (tuple): A tuple of classes accepted
49+
as additional properties values.
50+
"""
51+
52+
allowed_values = {
53+
('type',): {
54+
'None': None,
55+
'AMOUNT_MISMATCH': "FRAUD_ATTRIBUTES_AMOUNT_MISMATCH",
56+
'DATE_MISMATCH': "FRAUD_ATTRIBUTES_DATE_MISMATCH",
57+
'UNKNOWN_ERROR': "FRAUD_ATTRIBUTES_UNKNOWN_ERROR",
58+
},
59+
}
60+
61+
validations = {
62+
}
63+
64+
@cached_property
65+
def additional_properties_type():
66+
"""
67+
This must be a method because a model may have properties that are
68+
of type self, this must run after the class is loaded
69+
"""
70+
return (bool, date, datetime, dict, float, int, list, str, none_type,) # noqa: E501
71+
72+
_nullable = True
73+
74+
@cached_property
75+
def openapi_types():
76+
"""
77+
This must be a method because a model may have properties that are
78+
of type self, this must run after the class is loaded
79+
80+
Returns
81+
openapi_types (dict): The key is attribute name
82+
and the value is attribute type.
83+
"""
84+
return {
85+
'type': (str, none_type,), # noqa: E501
86+
}
87+
88+
@cached_property
89+
def discriminator():
90+
return None
91+
92+
93+
attribute_map = {
94+
'type': 'type', # noqa: E501
95+
}
96+
97+
_composed_schemas = {}
98+
99+
required_properties = set([
100+
'_data_store',
101+
'_check_type',
102+
'_spec_property_naming',
103+
'_path_to_item',
104+
'_configuration',
105+
'_visited_composed_classes',
106+
])
107+
108+
@convert_js_args_to_python_args
109+
def __init__(self, type, *args, **kwargs): # noqa: E501
110+
"""FraudAttributes - a model defined in OpenAPI
111+
112+
Args:
113+
type (str, none_type): Message indicating the reason as to why the verification failed
114+
115+
Keyword Args:
116+
_check_type (bool): if True, values for parameters in openapi_types
117+
will be type checked and a TypeError will be
118+
raised if the wrong type is input.
119+
Defaults to True
120+
_path_to_item (tuple/list): This is a list of keys or values to
121+
drill down to the model in received_data
122+
when deserializing a response
123+
_spec_property_naming (bool): True if the variable names in the input data
124+
are serialized names, as specified in the OpenAPI document.
125+
False if the variable names in the input data
126+
are pythonic names, e.g. snake case (default)
127+
_configuration (Configuration): the instance to use when
128+
deserializing a file_type parameter.
129+
If passed, type conversion is attempted
130+
If omitted no type conversion is done.
131+
_visited_composed_classes (tuple): This stores a tuple of
132+
classes that we have traveled through so that
133+
if we see that class again we will not use its
134+
discriminator again.
135+
When traveling through a discriminator, the
136+
composed schema that is
137+
is traveled through is added to this set.
138+
For example if Animal has a discriminator
139+
petType and we pass in "Dog", and the class Dog
140+
allOf includes Animal, we move through Animal
141+
once using the discriminator, and pick Dog.
142+
Then in Dog, we will make an instance of the
143+
Animal class but this time we won't travel
144+
through its discriminator because we passed in
145+
_visited_composed_classes = (Animal,)
146+
"""
147+
148+
_check_type = kwargs.pop('_check_type', True)
149+
_spec_property_naming = kwargs.pop('_spec_property_naming', False)
150+
_path_to_item = kwargs.pop('_path_to_item', ())
151+
_configuration = kwargs.pop('_configuration', None)
152+
_visited_composed_classes = kwargs.pop('_visited_composed_classes', ())
153+
154+
if args:
155+
raise ApiTypeError(
156+
"Invalid positional arguments=%s passed to %s. Remove those invalid positional arguments." % (
157+
args,
158+
self.__class__.__name__,
159+
),
160+
path_to_item=_path_to_item,
161+
valid_classes=(self.__class__,),
162+
)
163+
164+
self._data_store = {}
165+
self._check_type = _check_type
166+
self._spec_property_naming = _spec_property_naming
167+
self._path_to_item = _path_to_item
168+
self._configuration = _configuration
169+
self._visited_composed_classes = _visited_composed_classes + (self.__class__,)
170+
171+
self.type = type
172+
for var_name, var_value in kwargs.items():
173+
if var_name not in self.attribute_map and \
174+
self._configuration is not None and \
175+
self._configuration.discard_unknown_keys and \
176+
self.additional_properties_type is None:
177+
# discard variable.
178+
continue
179+
setattr(self, var_name, var_value)

plaid/model/link_token_create_request.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -162,7 +162,7 @@ def __init__(self, client_name, language, country_codes, user, *args, **kwargs):
162162
"""LinkTokenCreateRequest - a model defined in OpenAPI
163163
164164
Args:
165-
client_name (str): The name of your application, as it should be displayed in Link. Maximum length of 30 characters.
165+
client_name (str): The name of your application, as it should be displayed in Link. Maximum length of 30 characters. If a value longer than 30 characters is provided, Link will display \"This Application\" instead.
166166
language (str): The language that Link should be displayed in. Supported languages are: - English (`'en'`) - French (`'fr'`) - Spanish (`'es'`) - Dutch (`'nl'`) When using a Link customization, the language configured here must match the setting in the customization, or the customization will not be applied.
167167
country_codes ([CountryCode]): Specify an array of Plaid-supported country codes using the ISO-3166-1 alpha-2 country code standard. Institutions from all listed countries will be shown. Supported country codes are: `US`, `CA`, `ES`, `FR`, `GB`, `IE`, `NL`. If Link is launched with multiple country codes, only products that you are enabled for in all countries will be used by Link. Note that while all countries are enabled by default in Sandbox and Development, in Production only US and Canada are enabled by default. To gain access to European institutions in the Production environment, [file a product access Support ticket](https://dashboard.plaid.com/support/new/product-and-development/product-troubleshooting/request-product-access) via the Plaid dashboard. If you initialize with a European country code, your users will see the European consent panel during the Link flow. If using a Link customization, make sure the country codes in the customization match those specified in `country_codes`. If both `country_codes` and a Link customization are used, the value in `country_codes` may override the value in the customization. If using the Auth features Instant Match, Same-day Micro-deposits, or Automated Micro-deposits, `country_codes` must be set to `['US']`.
168168
user (LinkTokenCreateRequestUser):

plaid/model/numbers_ach.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -111,7 +111,7 @@ def __init__(self, account_id, account, routing, wire_routing, *args, **kwargs):
111111
112112
Args:
113113
account_id (str): The Plaid account ID associated with the account numbers
114-
account (str): The ACH account number for the account. Note that when using OAuth with Chase Bank (`ins_56`), Chase will issue \"tokenized\" routing and account numbers, which are not the user's actual account and routing numbers. These tokenized numbers should work identically to normal account and routing numbers. The digits returned in the mask field will continue to reflect the actual account number, rather than the tokenized account number. If a user revokes their permissions to your app, the tokenized numbers will continue to work for ACH deposits, but not withdrawals.
114+
account (str): The ACH account number for the account. Note that when using OAuth with Chase Bank (`ins_56`), Chase will issue \"tokenized\" routing and account numbers, which are not the user's actual account and routing numbers. These tokenized numbers should work identically to normal account and routing numbers. The digits returned in the `mask` field will continue to reflect the actual account number, rather than the tokenized account number; for this reason, when displaying account numbers to the user to help them identify their account in your UI, always use the `mask` rather than truncating the `account` number. If a user revokes their permissions to your app, the tokenized numbers will continue to work for ACH deposits, but not withdrawals.
115115
routing (str): The ACH routing number for the account. If the institution is `ins_56`, this may be a tokenized routing number. For more information, see the description of the `account` field.
116116
wire_routing (str, none_type): The wire transfer routing number for the account, if available
117117

0 commit comments

Comments
 (0)