vgs-api-client 0.0.45__py3-none-any.whl → 0.0.47__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.
- vgs/__init__.py +1 -1
- vgs/aliases_api.py +7 -1
- vgs/functions_api.py +1 -2
- vgs/sdk/account_mgmt.py +1 -1
- vgs/sdk/accounts_api.py +1 -1
- vgs/sdk/auth_api.py +2 -2
- vgs/sdk/vault_mgmt.py +1 -1
- vgs/sdk/vaults_api.py +1 -1
- vgs_api_client/__init__.py +2 -2
- vgs_api_client/api/aliases_api.py +182 -11
- vgs_api_client/api_client.py +2 -2
- vgs_api_client/configuration.py +2 -2
- vgs_api_client/exceptions.py +1 -1
- vgs_api_client/model/{alias.py → alias_dto.py} +4 -4
- vgs_api_client/model/alias_format.py +10 -6
- vgs_api_client/model/api_error.py +1 -1
- vgs_api_client/model/batch_aliases_request.py +264 -0
- vgs_api_client/model/create_aliases_request.py +4 -6
- vgs_api_client/model/create_aliases_request_new.py +1 -1
- vgs_api_client/model/create_aliases_request_reference.py +1 -1
- vgs_api_client/model/inline_response200.py +1 -1
- vgs_api_client/model/inline_response2001.py +1 -1
- vgs_api_client/model/inline_response201.py +1 -1
- vgs_api_client/model/inline_response_default.py +1 -1
- vgs_api_client/model/revealed_data.py +9 -9
- vgs_api_client/model/update_alias_request.py +1 -1
- vgs_api_client/model/update_alias_request_data.py +1 -1
- vgs_api_client/model_utils.py +1 -1
- vgs_api_client/models/__init__.py +2 -1
- vgs_api_client/rest.py +1 -1
- {vgs_api_client-0.0.45.dist-info → vgs_api_client-0.0.47.dist-info}/METADATA +6 -6
- vgs_api_client-0.0.47.dist-info/RECORD +51 -0
- {vgs_api_client-0.0.45.dist-info → vgs_api_client-0.0.47.dist-info}/WHEEL +1 -1
- vgs_api_client-0.0.45.dist-info/RECORD +0 -50
- {vgs_api_client-0.0.45.dist-info → vgs_api_client-0.0.47.dist-info}/LICENSE +0 -0
- {vgs_api_client-0.0.45.dist-info → vgs_api_client-0.0.47.dist-info}/top_level.txt +0 -0
vgs/__init__.py
CHANGED
vgs/aliases_api.py
CHANGED
|
@@ -1,3 +1,5 @@
|
|
|
1
|
+
import logging
|
|
2
|
+
|
|
1
3
|
import vgs.exceptions
|
|
2
4
|
import vgs_api_client
|
|
3
5
|
from vgs.configuration import Configuration
|
|
@@ -58,21 +60,24 @@ class Aliases:
|
|
|
58
60
|
api_response = self._api.create_aliases(create_aliases_request=create_aliases_request)
|
|
59
61
|
return api_response["data"]
|
|
60
62
|
except Exception as e:
|
|
63
|
+
logging.warning(f"EXCEPTION ${str(e)}")
|
|
61
64
|
raise _map_exception(f"Failed to redact data ${data}", e)
|
|
62
65
|
|
|
63
66
|
def reveal(self, aliases):
|
|
64
67
|
# TODO: validate data and raise meaningful exception on validation error
|
|
65
68
|
try:
|
|
66
69
|
query = ",".join(aliases) if isinstance(aliases, list) else aliases
|
|
67
|
-
api_response = self._api.reveal_multiple_aliases(
|
|
70
|
+
api_response = self._api.reveal_multiple_aliases(aliases=query)
|
|
68
71
|
return api_response["data"]
|
|
69
72
|
except Exception as e:
|
|
73
|
+
logging.warning(f"EXCEPTION ${str(e)}")
|
|
70
74
|
raise _map_exception(f"Failed to reveal aliases ${aliases}", e)
|
|
71
75
|
|
|
72
76
|
def delete(self, alias):
|
|
73
77
|
try:
|
|
74
78
|
self._api.delete_alias(alias=alias)
|
|
75
79
|
except Exception as e:
|
|
80
|
+
logging.warning(f"EXCEPTION ${str(e)}")
|
|
76
81
|
raise _map_exception(f"Failed to reveal delete ${alias}", e)
|
|
77
82
|
|
|
78
83
|
def update(self, alias, data):
|
|
@@ -84,4 +89,5 @@ class Aliases:
|
|
|
84
89
|
),
|
|
85
90
|
)
|
|
86
91
|
except Exception as e:
|
|
92
|
+
logging.warning(f"EXCEPTION ${str(e)}")
|
|
87
93
|
raise _map_exception(f"Failed to update alias ${alias}.", e)
|
vgs/functions_api.py
CHANGED
|
@@ -16,7 +16,7 @@ from vgs import certs
|
|
|
16
16
|
from vgs.base_api import BaseApi
|
|
17
17
|
from vgs.configuration import Configuration
|
|
18
18
|
|
|
19
|
-
USER_AGENT = "vgs-sdk/0.0.
|
|
19
|
+
USER_AGENT = "vgs-sdk/0.0.47/python"
|
|
20
20
|
|
|
21
21
|
ECHO_SECURE_HOST_CONFIG = "echo\\.secure\\.verygood\\.systems"
|
|
22
22
|
FUNCTION_CONDITION_EXPRESSION = (
|
|
@@ -261,7 +261,6 @@ class Functions(BaseApi):
|
|
|
261
261
|
return routes_api.routes.delete(route_id)
|
|
262
262
|
|
|
263
263
|
def _create_routes_api(self):
|
|
264
|
-
|
|
265
264
|
api = vgs.sdk.vaults_api.create_api(
|
|
266
265
|
None, self.config.vault_id, self.auth_environment, self.auth_token
|
|
267
266
|
)
|
vgs/sdk/account_mgmt.py
CHANGED
|
@@ -10,7 +10,7 @@ class AccountMgmtAPI(API):
|
|
|
10
10
|
"Accept": "application/vnd.api+json",
|
|
11
11
|
"Authorization": f"Bearer {access_token}",
|
|
12
12
|
"Content-Type": "application/vnd.api+json",
|
|
13
|
-
"User-Agent": f"VGS SDK 0.0.
|
|
13
|
+
"User-Agent": f"VGS SDK 0.0.47",
|
|
14
14
|
},
|
|
15
15
|
json_encode_body=True,
|
|
16
16
|
)
|
vgs/sdk/accounts_api.py
CHANGED
|
@@ -33,7 +33,7 @@ def create_api(token, environment):
|
|
|
33
33
|
headers={
|
|
34
34
|
"Content-Type": "application/vnd.api+json",
|
|
35
35
|
"Accept": "application/vnd.api+json",
|
|
36
|
-
"User-Agent": "VGS SDK {}".format("0.0.
|
|
36
|
+
"User-Agent": "VGS SDK {}".format("0.0.47"),
|
|
37
37
|
"Authorization": "Bearer {}".format(token),
|
|
38
38
|
},
|
|
39
39
|
timeout=50, # default timeout in seconds
|
vgs/sdk/auth_api.py
CHANGED
|
@@ -21,7 +21,7 @@ def create_api(environment):
|
|
|
21
21
|
api = API(
|
|
22
22
|
api_root_url=env_url[environment],
|
|
23
23
|
params={}, # default params
|
|
24
|
-
headers={"User-Agent": f"VGS SDK 0.0.
|
|
24
|
+
headers={"User-Agent": f"VGS SDK 0.0.47"}, # default headers
|
|
25
25
|
timeout=50, # default timeout in seconds
|
|
26
26
|
append_slash=False, # append slash to final url
|
|
27
27
|
)
|
|
@@ -45,7 +45,7 @@ def logout(api, client_id, access_token, refresh_token):
|
|
|
45
45
|
headers={
|
|
46
46
|
"Authorization": access_token,
|
|
47
47
|
"Content-Type": "application/x-www-form-urlencoded",
|
|
48
|
-
"User-Agent": f"VGS SDK 0.0.
|
|
48
|
+
"User-Agent": f"VGS SDK 0.0.47",
|
|
49
49
|
},
|
|
50
50
|
body="client_id={client_id}&refresh_token={refresh_token}".format(
|
|
51
51
|
client_id=client_id, refresh_token=refresh_token
|
vgs/sdk/vault_mgmt.py
CHANGED
|
@@ -10,7 +10,7 @@ class VaultMgmtAPI(API):
|
|
|
10
10
|
"Accept": "application/vnd.api+json",
|
|
11
11
|
"Authorization": f"Bearer {access_token}",
|
|
12
12
|
"Content-Type": "application/vnd.api+json",
|
|
13
|
-
"User-Agent": f"VGS SDK 0.0.
|
|
13
|
+
"User-Agent": f"VGS SDK 0.0.47",
|
|
14
14
|
},
|
|
15
15
|
json_encode_body=True,
|
|
16
16
|
)
|
vgs/sdk/vaults_api.py
CHANGED
|
@@ -21,7 +21,7 @@ def create_api(ctx, vault_id, environment, token):
|
|
|
21
21
|
"VGS-Tenant": vault_id,
|
|
22
22
|
"Content-Type": "application/vnd.api+json",
|
|
23
23
|
"Accept": "application/vnd.api+json",
|
|
24
|
-
"User-Agent": "VGS SDK {}".format("0.0.
|
|
24
|
+
"User-Agent": "VGS SDK {}".format("0.0.47"),
|
|
25
25
|
"Authorization": "Bearer {}".format(token),
|
|
26
26
|
}, # default headers
|
|
27
27
|
timeout=50, # default timeout in seconds
|
vgs_api_client/__init__.py
CHANGED
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
"""
|
|
4
4
|
Vault HTTP API
|
|
5
5
|
|
|
6
|
-
The VGS Vault HTTP API is used for storing, retrieving, and managing sensitive data (aka Tokenization) within a VGS Vault. The VGS API is organized around REST. Our API is built with a predictable resource-oriented structure, uses JSON-encoded requests and responses, follows standard HTTP verbs/responses, and uses industry standard authentication. ## What is VGS Storing sensitive data on your company’s infrastructure often comes with a heavy compliance burden. For instance, storing payments data yourself greatly increases the amount of work needed to become PCI compliant. It also increases your security risk in general. To combat this, companies will minimize the amount of sensitive information they have to handle or store. VGS provides multiple methods for minimizing the sensitive information that needs to be stored which allows customers to secure any type of data for any use-case. **Tokenization** is a method that focuses on securing the storage of data. This is the quickest way to get started and is free. [Get started with Tokenization](https://www.verygoodsecurity.com/docs/tokenization/getting-started). **Zero Data** is a unique method invented by VGS in 2016 that securely stores data like Tokenization, however it also removes the customer’s environment from PCI scope completely providing maximum security, and minimum compliance scope. [Get started with Zero Data](https://www.verygoodsecurity.com/docs/getting-started/before-you-start). Additionally, for scenarios where neither technology is a complete solution, for instance with legacy systems, VGS provides a compliance product which guarantees customers are able to meet their compliance needs no matter what may happen. [Get started with Control](https://www.verygoodsecurity.com/docs/control). ## Learn about Tokenization - [Create an Account for Free Tokenization](https://dashboard.verygoodsecurity.com/tokenization) - [Try a Tokenization Demo](https://www.verygoodsecurity.com/docs/tokenization/getting-started) - [Install a Tokenization SDK](https://www.verygoodsecurity.com/docs/tokenization/client-libraries) ### Authentication This API uses `Basic` authentication and is implemented using industry best practices to ensure the security of the connection. Read more about [Identity and Access Management at VGS](https://www.verygoodsecurity.com/docs/vault/the-platform/iam) Credentials to access the API can be generated on the [dashboard](https://dashboard.verygoodsecurity.com) by going to the Settings section of the vault of your choosing. [Docs » Guides » Access credentials](https://www.verygoodsecurity.com/docs/settings/access-credentials) ## Resource Limits ### Data Limits This API allows storing data up to 32MB in size. ### Rate Limiting The API allows up to 3,000 requests per minute. Requests are associated with the vault, regardless of the access credentials used to authenticate the request. Your current rate limit is included as HTTP headers in every API response: | Header Name | Description | |-------------------------|----------------------------------------------------------| | `x-ratelimit-remaining` | The number of requests remaining in the 1-minute window. | If you exceed the rate limit, the API will reject the request with HTTP [429 Too Many Requests](https://developer.mozilla.org/en-US/docs/Web/HTTP/Status/429). ### Errors The API uses standard HTTP status codes to indicate whether the request succeeded or not. In case of failure, the response body will be JSON in a predefined format. For example, trying to create too many aliases at once results in the following response: ```json { \"errors\": [ { \"status\": 400, \"title\": \"Bad request\", \"detail\": \"Too many values (limit: 20)\", \"href\": \"https://api.sandbox.verygoodvault.com/aliases\" } ] } ``` # noqa: E501
|
|
6
|
+
The VGS Vault HTTP API is used for storing, retrieving, and managing sensitive data (aka Tokenization) within a VGS Vault. The VGS API is organized around REST. Our API is built with a predictable resource-oriented structure, uses JSON-encoded requests and responses, follows standard HTTP verbs/responses, and uses industry standard authentication. ## What is VGS Storing sensitive data on your company’s infrastructure often comes with a heavy compliance burden. For instance, storing payments data yourself greatly increases the amount of work needed to become PCI compliant. It also increases your security risk in general. To combat this, companies will minimize the amount of sensitive information they have to handle or store. VGS provides multiple methods for minimizing the sensitive information that needs to be stored which allows customers to secure any type of data for any use-case. **Tokenization** is a method that focuses on securing the storage of data. This is the quickest way to get started and is free. [Get started with Tokenization](https://www.verygoodsecurity.com/docs/tokenization/getting-started). **Zero Data** is a unique method invented by VGS in 2016 that securely stores data like Tokenization, however it also removes the customer’s environment from PCI scope completely providing maximum security, and minimum compliance scope. [Get started with Zero Data](https://www.verygoodsecurity.com/docs/getting-started/before-you-start). Additionally, for scenarios where neither technology is a complete solution, for instance with legacy systems, VGS provides a compliance product which guarantees customers are able to meet their compliance needs no matter what may happen. [Get started with Control](https://www.verygoodsecurity.com/docs/control). ## Learn about Tokenization - [Create an Account for Free Tokenization](https://dashboard.verygoodsecurity.com/tokenization) - [Try a Tokenization Demo](https://www.verygoodsecurity.com/docs/tokenization/getting-started) - [Install a Tokenization SDK](https://www.verygoodsecurity.com/docs/tokenization/client-libraries) ## Introduction ### Alias-Formats | Format | Description | |---------------------------------|-------------------------------------------------------------------------------------------| | UUID | Generic - VGS Alias (Default) - tok_sandbox_xxxxxxxxxxxxxxxxxxxxxxxxx | | NUM_LENGTH_PRESERVING | Generic - Numeric Length Preserving - xxxxxxxxxxxxxxxx | | FPE_SIX_T_FOUR | Payment Card - Format Preserving, Luhn Valid (6T4) - <first_six>xxxxxx<last_four> | | FPE_T_FOUR | Payment Card - Format Preserving, Luhn Valid (T4) - xxxxxxxxxxxx<last_four> | | PFPT | Payment Card - Prefixed, Luhn Valid, 19 Digits Fixed Length - xxxxxxxxxxxxxxxxxxx | | NON_LUHN_FPE_ALPHANUMERIC | Payment Card - Format Preserving - Non Luhn Valid - xxxxxxxxxxxxxxxx | | FPE_SSN_T_FOUR | SSN - Format Preserving (A4) - xxx-xx-<last_four> | | FPE_ACC_NUM_T_FOUR | Account Number - Numeric Length Preserving (A4) - xxxxxxxxxxxx<last_four> | | FPE_ALPHANUMERIC_ACC_NUM_T_FOUR | Account Number - Alphanumeric Length Preserving (A4) - xxxxxxxxxxxx<last_four> | | GENERIC_T_FOUR | Generic - VGS Alias Last Four (T4) - tok_sandbox_xxxxxxxxxxxxxxxxxxxxxxxxx_<last_four> | | RAW_UUID | Generic - UUID - xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx | | ALPHANUMERIC_SIX_T_FOUR | Numeric - Include Alphanumeric, 19 symbols length (6T4) - <first_six>xxxxxxxxx<last_four> | | VGS_FIXED_LEN_GENERIC | Generic - VGS Alphanumeric Fixed Length, 29 characters - vgsxxxxxxxxxxxxxxxxxxxxxxxxxx | ## Authentication This API uses `Basic` authentication and is implemented using industry best practices to ensure the security of the connection. Read more about [Identity and Access Management at VGS](https://www.verygoodsecurity.com/docs/vault/the-platform/iam) Credentials to access the API can be generated on the [dashboard](https://dashboard.verygoodsecurity.com) by going to the Settings section of the vault of your choosing. [Docs » Guides » Access credentials](https://www.verygoodsecurity.com/docs/settings/access-credentials) ## Resource Limits ### Data Limits This API allows storing data up to 32MB in size. ### Rate Limiting The API allows up to 3,000 requests per minute. Requests are associated with the vault, regardless of the access credentials used to authenticate the request. Your current rate limit is included as HTTP headers in every API response: | Header Name | Description | |-------------------------|----------------------------------------------------------| | `x-ratelimit-remaining` | The number of requests remaining in the 1-minute window. | If you exceed the rate limit, the API will reject the request with HTTP [429 Too Many Requests](https://developer.mozilla.org/en-US/docs/Web/HTTP/Status/429). ### Errors The API uses standard HTTP status codes to indicate whether the request succeeded or not. In case of failure, the response body will be JSON in a predefined format. For example, trying to create too many aliases at once results in the following response: ```json { \"errors\": [ { \"status\": 400, \"title\": \"Bad request\", \"detail\": \"Too many values (limit: 20)\", \"href\": \"https://api.sandbox.verygoodvault.com/aliases\" } ] } ``` # noqa: E501
|
|
7
7
|
|
|
8
8
|
The version of the OpenAPI document: 1.0.0
|
|
9
9
|
Contact: support@verygoodsecurity.com
|
|
@@ -11,7 +11,7 @@
|
|
|
11
11
|
"""
|
|
12
12
|
|
|
13
13
|
|
|
14
|
-
__version__ = "0.0.
|
|
14
|
+
__version__ = "0.0.47"
|
|
15
15
|
|
|
16
16
|
# import ApiClient
|
|
17
17
|
from vgs_api_client.api_client import ApiClient
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
"""
|
|
2
2
|
Vault HTTP API
|
|
3
3
|
|
|
4
|
-
The VGS Vault HTTP API is used for storing, retrieving, and managing sensitive data (aka Tokenization) within a VGS Vault. The VGS API is organized around REST. Our API is built with a predictable resource-oriented structure, uses JSON-encoded requests and responses, follows standard HTTP verbs/responses, and uses industry standard authentication. ## What is VGS Storing sensitive data on your company’s infrastructure often comes with a heavy compliance burden. For instance, storing payments data yourself greatly increases the amount of work needed to become PCI compliant. It also increases your security risk in general. To combat this, companies will minimize the amount of sensitive information they have to handle or store. VGS provides multiple methods for minimizing the sensitive information that needs to be stored which allows customers to secure any type of data for any use-case. **Tokenization** is a method that focuses on securing the storage of data. This is the quickest way to get started and is free. [Get started with Tokenization](https://www.verygoodsecurity.com/docs/tokenization/getting-started). **Zero Data** is a unique method invented by VGS in 2016 that securely stores data like Tokenization, however it also removes the customer’s environment from PCI scope completely providing maximum security, and minimum compliance scope. [Get started with Zero Data](https://www.verygoodsecurity.com/docs/getting-started/before-you-start). Additionally, for scenarios where neither technology is a complete solution, for instance with legacy systems, VGS provides a compliance product which guarantees customers are able to meet their compliance needs no matter what may happen. [Get started with Control](https://www.verygoodsecurity.com/docs/control). ## Learn about Tokenization - [Create an Account for Free Tokenization](https://dashboard.verygoodsecurity.com/tokenization) - [Try a Tokenization Demo](https://www.verygoodsecurity.com/docs/tokenization/getting-started) - [Install a Tokenization SDK](https://www.verygoodsecurity.com/docs/tokenization/client-libraries) ### Authentication This API uses `Basic` authentication and is implemented using industry best practices to ensure the security of the connection. Read more about [Identity and Access Management at VGS](https://www.verygoodsecurity.com/docs/vault/the-platform/iam) Credentials to access the API can be generated on the [dashboard](https://dashboard.verygoodsecurity.com) by going to the Settings section of the vault of your choosing. [Docs » Guides » Access credentials](https://www.verygoodsecurity.com/docs/settings/access-credentials) ## Resource Limits ### Data Limits This API allows storing data up to 32MB in size. ### Rate Limiting The API allows up to 3,000 requests per minute. Requests are associated with the vault, regardless of the access credentials used to authenticate the request. Your current rate limit is included as HTTP headers in every API response: | Header Name | Description | |-------------------------|----------------------------------------------------------| | `x-ratelimit-remaining` | The number of requests remaining in the 1-minute window. | If you exceed the rate limit, the API will reject the request with HTTP [429 Too Many Requests](https://developer.mozilla.org/en-US/docs/Web/HTTP/Status/429). ### Errors The API uses standard HTTP status codes to indicate whether the request succeeded or not. In case of failure, the response body will be JSON in a predefined format. For example, trying to create too many aliases at once results in the following response: ```json { \"errors\": [ { \"status\": 400, \"title\": \"Bad request\", \"detail\": \"Too many values (limit: 20)\", \"href\": \"https://api.sandbox.verygoodvault.com/aliases\" } ] } ``` # noqa: E501
|
|
4
|
+
The VGS Vault HTTP API is used for storing, retrieving, and managing sensitive data (aka Tokenization) within a VGS Vault. The VGS API is organized around REST. Our API is built with a predictable resource-oriented structure, uses JSON-encoded requests and responses, follows standard HTTP verbs/responses, and uses industry standard authentication. ## What is VGS Storing sensitive data on your company’s infrastructure often comes with a heavy compliance burden. For instance, storing payments data yourself greatly increases the amount of work needed to become PCI compliant. It also increases your security risk in general. To combat this, companies will minimize the amount of sensitive information they have to handle or store. VGS provides multiple methods for minimizing the sensitive information that needs to be stored which allows customers to secure any type of data for any use-case. **Tokenization** is a method that focuses on securing the storage of data. This is the quickest way to get started and is free. [Get started with Tokenization](https://www.verygoodsecurity.com/docs/tokenization/getting-started). **Zero Data** is a unique method invented by VGS in 2016 that securely stores data like Tokenization, however it also removes the customer’s environment from PCI scope completely providing maximum security, and minimum compliance scope. [Get started with Zero Data](https://www.verygoodsecurity.com/docs/getting-started/before-you-start). Additionally, for scenarios where neither technology is a complete solution, for instance with legacy systems, VGS provides a compliance product which guarantees customers are able to meet their compliance needs no matter what may happen. [Get started with Control](https://www.verygoodsecurity.com/docs/control). ## Learn about Tokenization - [Create an Account for Free Tokenization](https://dashboard.verygoodsecurity.com/tokenization) - [Try a Tokenization Demo](https://www.verygoodsecurity.com/docs/tokenization/getting-started) - [Install a Tokenization SDK](https://www.verygoodsecurity.com/docs/tokenization/client-libraries) ## Introduction ### Alias-Formats | Format | Description | |---------------------------------|-------------------------------------------------------------------------------------------| | UUID | Generic - VGS Alias (Default) - tok_sandbox_xxxxxxxxxxxxxxxxxxxxxxxxx | | NUM_LENGTH_PRESERVING | Generic - Numeric Length Preserving - xxxxxxxxxxxxxxxx | | FPE_SIX_T_FOUR | Payment Card - Format Preserving, Luhn Valid (6T4) - <first_six>xxxxxx<last_four> | | FPE_T_FOUR | Payment Card - Format Preserving, Luhn Valid (T4) - xxxxxxxxxxxx<last_four> | | PFPT | Payment Card - Prefixed, Luhn Valid, 19 Digits Fixed Length - xxxxxxxxxxxxxxxxxxx | | NON_LUHN_FPE_ALPHANUMERIC | Payment Card - Format Preserving - Non Luhn Valid - xxxxxxxxxxxxxxxx | | FPE_SSN_T_FOUR | SSN - Format Preserving (A4) - xxx-xx-<last_four> | | FPE_ACC_NUM_T_FOUR | Account Number - Numeric Length Preserving (A4) - xxxxxxxxxxxx<last_four> | | FPE_ALPHANUMERIC_ACC_NUM_T_FOUR | Account Number - Alphanumeric Length Preserving (A4) - xxxxxxxxxxxx<last_four> | | GENERIC_T_FOUR | Generic - VGS Alias Last Four (T4) - tok_sandbox_xxxxxxxxxxxxxxxxxxxxxxxxx_<last_four> | | RAW_UUID | Generic - UUID - xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx | | ALPHANUMERIC_SIX_T_FOUR | Numeric - Include Alphanumeric, 19 symbols length (6T4) - <first_six>xxxxxxxxx<last_four> | | VGS_FIXED_LEN_GENERIC | Generic - VGS Alphanumeric Fixed Length, 29 characters - vgsxxxxxxxxxxxxxxxxxxxxxxxxxx | ## Authentication This API uses `Basic` authentication and is implemented using industry best practices to ensure the security of the connection. Read more about [Identity and Access Management at VGS](https://www.verygoodsecurity.com/docs/vault/the-platform/iam) Credentials to access the API can be generated on the [dashboard](https://dashboard.verygoodsecurity.com) by going to the Settings section of the vault of your choosing. [Docs » Guides » Access credentials](https://www.verygoodsecurity.com/docs/settings/access-credentials) ## Resource Limits ### Data Limits This API allows storing data up to 32MB in size. ### Rate Limiting The API allows up to 3,000 requests per minute. Requests are associated with the vault, regardless of the access credentials used to authenticate the request. Your current rate limit is included as HTTP headers in every API response: | Header Name | Description | |-------------------------|----------------------------------------------------------| | `x-ratelimit-remaining` | The number of requests remaining in the 1-minute window. | If you exceed the rate limit, the API will reject the request with HTTP [429 Too Many Requests](https://developer.mozilla.org/en-US/docs/Web/HTTP/Status/429). ### Errors The API uses standard HTTP status codes to indicate whether the request succeeded or not. In case of failure, the response body will be JSON in a predefined format. For example, trying to create too many aliases at once results in the following response: ```json { \"errors\": [ { \"status\": 400, \"title\": \"Bad request\", \"detail\": \"Too many values (limit: 20)\", \"href\": \"https://api.sandbox.verygoodvault.com/aliases\" } ] } ``` # noqa: E501
|
|
5
5
|
|
|
6
6
|
The version of the OpenAPI document: 1.0.0
|
|
7
7
|
Contact: support@verygoodsecurity.com
|
|
@@ -22,6 +22,7 @@ from vgs_api_client.model_utils import ( # noqa: F401
|
|
|
22
22
|
none_type,
|
|
23
23
|
validate_and_convert_types
|
|
24
24
|
)
|
|
25
|
+
from vgs_api_client.model.batch_aliases_request import BatchAliasesRequest
|
|
25
26
|
from vgs_api_client.model.create_aliases_request import CreateAliasesRequest
|
|
26
27
|
from vgs_api_client.model.inline_response200 import InlineResponse200
|
|
27
28
|
from vgs_api_client.model.inline_response2001 import InlineResponse2001
|
|
@@ -105,6 +106,7 @@ class AliasesApi(object):
|
|
|
105
106
|
params_map={
|
|
106
107
|
'all': [
|
|
107
108
|
'alias',
|
|
109
|
+
'storage',
|
|
108
110
|
],
|
|
109
111
|
'required': [
|
|
110
112
|
'alias',
|
|
@@ -112,6 +114,7 @@ class AliasesApi(object):
|
|
|
112
114
|
'nullable': [
|
|
113
115
|
],
|
|
114
116
|
'enum': [
|
|
117
|
+
'storage',
|
|
115
118
|
],
|
|
116
119
|
'validation': [
|
|
117
120
|
]
|
|
@@ -120,16 +123,25 @@ class AliasesApi(object):
|
|
|
120
123
|
'validations': {
|
|
121
124
|
},
|
|
122
125
|
'allowed_values': {
|
|
126
|
+
('storage',): {
|
|
127
|
+
|
|
128
|
+
"PERSISTENT": "PERSISTENT",
|
|
129
|
+
"VOLATILE": "VOLATILE"
|
|
130
|
+
},
|
|
123
131
|
},
|
|
124
132
|
'openapi_types': {
|
|
125
133
|
'alias':
|
|
126
134
|
(str,),
|
|
135
|
+
'storage':
|
|
136
|
+
(str,),
|
|
127
137
|
},
|
|
128
138
|
'attribute_map': {
|
|
129
139
|
'alias': 'alias',
|
|
140
|
+
'storage': 'storage',
|
|
130
141
|
},
|
|
131
142
|
'location_map': {
|
|
132
143
|
'alias': 'path',
|
|
144
|
+
'storage': 'query',
|
|
133
145
|
},
|
|
134
146
|
'collection_format_map': {
|
|
135
147
|
}
|
|
@@ -142,6 +154,56 @@ class AliasesApi(object):
|
|
|
142
154
|
},
|
|
143
155
|
api_client=api_client
|
|
144
156
|
)
|
|
157
|
+
self.delete_aliases_endpoint = _Endpoint(
|
|
158
|
+
settings={
|
|
159
|
+
'response_type': None,
|
|
160
|
+
'auth': [
|
|
161
|
+
'basicAuth'
|
|
162
|
+
],
|
|
163
|
+
'endpoint_path': '/aliases/delete',
|
|
164
|
+
'operation_id': 'delete_aliases',
|
|
165
|
+
'http_method': 'POST',
|
|
166
|
+
'servers': None,
|
|
167
|
+
},
|
|
168
|
+
params_map={
|
|
169
|
+
'all': [
|
|
170
|
+
'batch_aliases_request',
|
|
171
|
+
],
|
|
172
|
+
'required': [
|
|
173
|
+
'batch_aliases_request',
|
|
174
|
+
],
|
|
175
|
+
'nullable': [
|
|
176
|
+
],
|
|
177
|
+
'enum': [
|
|
178
|
+
],
|
|
179
|
+
'validation': [
|
|
180
|
+
]
|
|
181
|
+
},
|
|
182
|
+
root_map={
|
|
183
|
+
'validations': {
|
|
184
|
+
},
|
|
185
|
+
'allowed_values': {
|
|
186
|
+
},
|
|
187
|
+
'openapi_types': {
|
|
188
|
+
'batch_aliases_request':
|
|
189
|
+
(BatchAliasesRequest,),
|
|
190
|
+
},
|
|
191
|
+
'attribute_map': {
|
|
192
|
+
},
|
|
193
|
+
'location_map': {
|
|
194
|
+
'batch_aliases_request': 'body',
|
|
195
|
+
},
|
|
196
|
+
'collection_format_map': {
|
|
197
|
+
}
|
|
198
|
+
},
|
|
199
|
+
headers_map={
|
|
200
|
+
'accept': [],
|
|
201
|
+
'content_type': [
|
|
202
|
+
'application/json'
|
|
203
|
+
]
|
|
204
|
+
},
|
|
205
|
+
api_client=api_client
|
|
206
|
+
)
|
|
145
207
|
self.reveal_alias_endpoint = _Endpoint(
|
|
146
208
|
settings={
|
|
147
209
|
'response_type': (InlineResponse2001,),
|
|
@@ -156,6 +218,7 @@ class AliasesApi(object):
|
|
|
156
218
|
params_map={
|
|
157
219
|
'all': [
|
|
158
220
|
'alias',
|
|
221
|
+
'storage',
|
|
159
222
|
],
|
|
160
223
|
'required': [
|
|
161
224
|
'alias',
|
|
@@ -163,6 +226,7 @@ class AliasesApi(object):
|
|
|
163
226
|
'nullable': [
|
|
164
227
|
],
|
|
165
228
|
'enum': [
|
|
229
|
+
'storage',
|
|
166
230
|
],
|
|
167
231
|
'validation': [
|
|
168
232
|
]
|
|
@@ -171,16 +235,25 @@ class AliasesApi(object):
|
|
|
171
235
|
'validations': {
|
|
172
236
|
},
|
|
173
237
|
'allowed_values': {
|
|
238
|
+
('storage',): {
|
|
239
|
+
|
|
240
|
+
"PERSISTENT": "PERSISTENT",
|
|
241
|
+
"VOLATILE": "VOLATILE"
|
|
242
|
+
},
|
|
174
243
|
},
|
|
175
244
|
'openapi_types': {
|
|
176
245
|
'alias':
|
|
177
246
|
(str,),
|
|
247
|
+
'storage':
|
|
248
|
+
(str,),
|
|
178
249
|
},
|
|
179
250
|
'attribute_map': {
|
|
180
251
|
'alias': 'alias',
|
|
252
|
+
'storage': 'storage',
|
|
181
253
|
},
|
|
182
254
|
'location_map': {
|
|
183
255
|
'alias': 'path',
|
|
256
|
+
'storage': 'query',
|
|
184
257
|
},
|
|
185
258
|
'collection_format_map': {
|
|
186
259
|
}
|
|
@@ -206,10 +279,11 @@ class AliasesApi(object):
|
|
|
206
279
|
},
|
|
207
280
|
params_map={
|
|
208
281
|
'all': [
|
|
209
|
-
'
|
|
282
|
+
'aliases',
|
|
283
|
+
'storage',
|
|
210
284
|
],
|
|
211
285
|
'required': [
|
|
212
|
-
'
|
|
286
|
+
'aliases',
|
|
213
287
|
],
|
|
214
288
|
'nullable': [
|
|
215
289
|
],
|
|
@@ -224,14 +298,18 @@ class AliasesApi(object):
|
|
|
224
298
|
'allowed_values': {
|
|
225
299
|
},
|
|
226
300
|
'openapi_types': {
|
|
227
|
-
'
|
|
301
|
+
'aliases':
|
|
302
|
+
(str,),
|
|
303
|
+
'storage':
|
|
228
304
|
(str,),
|
|
229
305
|
},
|
|
230
306
|
'attribute_map': {
|
|
231
|
-
'
|
|
307
|
+
'aliases': 'aliases',
|
|
308
|
+
'storage': 'storage',
|
|
232
309
|
},
|
|
233
310
|
'location_map': {
|
|
234
|
-
'
|
|
311
|
+
'aliases': 'query',
|
|
312
|
+
'storage': 'query',
|
|
235
313
|
},
|
|
236
314
|
'collection_format_map': {
|
|
237
315
|
}
|
|
@@ -258,6 +336,7 @@ class AliasesApi(object):
|
|
|
258
336
|
params_map={
|
|
259
337
|
'all': [
|
|
260
338
|
'alias',
|
|
339
|
+
'storage',
|
|
261
340
|
'update_alias_request',
|
|
262
341
|
],
|
|
263
342
|
'required': [
|
|
@@ -266,6 +345,7 @@ class AliasesApi(object):
|
|
|
266
345
|
'nullable': [
|
|
267
346
|
],
|
|
268
347
|
'enum': [
|
|
348
|
+
'storage',
|
|
269
349
|
],
|
|
270
350
|
'validation': [
|
|
271
351
|
]
|
|
@@ -274,18 +354,27 @@ class AliasesApi(object):
|
|
|
274
354
|
'validations': {
|
|
275
355
|
},
|
|
276
356
|
'allowed_values': {
|
|
357
|
+
('storage',): {
|
|
358
|
+
|
|
359
|
+
"PERSISTENT": "PERSISTENT",
|
|
360
|
+
"VOLATILE": "VOLATILE"
|
|
361
|
+
},
|
|
277
362
|
},
|
|
278
363
|
'openapi_types': {
|
|
279
364
|
'alias':
|
|
280
365
|
(str,),
|
|
366
|
+
'storage':
|
|
367
|
+
(str,),
|
|
281
368
|
'update_alias_request':
|
|
282
369
|
(UpdateAliasRequest,),
|
|
283
370
|
},
|
|
284
371
|
'attribute_map': {
|
|
285
372
|
'alias': 'alias',
|
|
373
|
+
'storage': 'storage',
|
|
286
374
|
},
|
|
287
375
|
'location_map': {
|
|
288
376
|
'alias': 'path',
|
|
377
|
+
'storage': 'query',
|
|
289
378
|
'update_alias_request': 'body',
|
|
290
379
|
},
|
|
291
380
|
'collection_format_map': {
|
|
@@ -394,6 +483,7 @@ class AliasesApi(object):
|
|
|
394
483
|
alias (str): Alias to operate on.
|
|
395
484
|
|
|
396
485
|
Keyword Args:
|
|
486
|
+
storage (str): [optional] if omitted the server will use the default value of "PERSISTENT"
|
|
397
487
|
_return_http_data_only (bool): response data without head status
|
|
398
488
|
code and headers. Default is True.
|
|
399
489
|
_preload_content (bool): if False, the urllib3.HTTPResponse object
|
|
@@ -454,6 +544,84 @@ class AliasesApi(object):
|
|
|
454
544
|
alias
|
|
455
545
|
return self.delete_alias_endpoint.call_with_http_info(**kwargs)
|
|
456
546
|
|
|
547
|
+
def delete_aliases(
|
|
548
|
+
self,
|
|
549
|
+
batch_aliases_request,
|
|
550
|
+
**kwargs
|
|
551
|
+
):
|
|
552
|
+
"""Batch Delete Aliases # noqa: E501
|
|
553
|
+
|
|
554
|
+
Deletes multiple aliases. # noqa: E501
|
|
555
|
+
This method makes a synchronous HTTP request by default. To make an
|
|
556
|
+
asynchronous HTTP request, please pass async_req=True
|
|
557
|
+
|
|
558
|
+
>>> thread = api.delete_aliases(batch_aliases_request, async_req=True)
|
|
559
|
+
>>> result = thread.get()
|
|
560
|
+
|
|
561
|
+
Args:
|
|
562
|
+
batch_aliases_request (BatchAliasesRequest):
|
|
563
|
+
|
|
564
|
+
Keyword Args:
|
|
565
|
+
_return_http_data_only (bool): response data without head status
|
|
566
|
+
code and headers. Default is True.
|
|
567
|
+
_preload_content (bool): if False, the urllib3.HTTPResponse object
|
|
568
|
+
will be returned without reading/decoding response data.
|
|
569
|
+
Default is True.
|
|
570
|
+
_request_timeout (int/float/tuple): timeout setting for this request. If
|
|
571
|
+
one number provided, it will be total request timeout. It can also
|
|
572
|
+
be a pair (tuple) of (connection, read) timeouts.
|
|
573
|
+
Default is None.
|
|
574
|
+
_check_input_type (bool): specifies if type checking
|
|
575
|
+
should be done one the data sent to the server.
|
|
576
|
+
Default is True.
|
|
577
|
+
_check_return_type (bool): specifies if type checking
|
|
578
|
+
should be done one the data received from the server.
|
|
579
|
+
Default is True.
|
|
580
|
+
_spec_property_naming (bool): True if the variable names in the input data
|
|
581
|
+
are serialized names, as specified in the OpenAPI document.
|
|
582
|
+
False if the variable names in the input data
|
|
583
|
+
are pythonic names, e.g. snake case (default)
|
|
584
|
+
_content_type (str/None): force body content-type.
|
|
585
|
+
Default is None and content-type will be predicted by allowed
|
|
586
|
+
content-types and body.
|
|
587
|
+
_host_index (int/None): specifies the index of the server
|
|
588
|
+
that we want to use.
|
|
589
|
+
Default is read from the configuration.
|
|
590
|
+
async_req (bool): execute request asynchronously
|
|
591
|
+
|
|
592
|
+
Returns:
|
|
593
|
+
None
|
|
594
|
+
If the method is called asynchronously, returns the request
|
|
595
|
+
thread.
|
|
596
|
+
"""
|
|
597
|
+
kwargs['async_req'] = kwargs.get(
|
|
598
|
+
'async_req', False
|
|
599
|
+
)
|
|
600
|
+
kwargs['_return_http_data_only'] = kwargs.get(
|
|
601
|
+
'_return_http_data_only', True
|
|
602
|
+
)
|
|
603
|
+
kwargs['_preload_content'] = kwargs.get(
|
|
604
|
+
'_preload_content', True
|
|
605
|
+
)
|
|
606
|
+
kwargs['_request_timeout'] = kwargs.get(
|
|
607
|
+
'_request_timeout', None
|
|
608
|
+
)
|
|
609
|
+
kwargs['_check_input_type'] = kwargs.get(
|
|
610
|
+
'_check_input_type', True
|
|
611
|
+
)
|
|
612
|
+
kwargs['_check_return_type'] = kwargs.get(
|
|
613
|
+
'_check_return_type', True
|
|
614
|
+
)
|
|
615
|
+
kwargs['_spec_property_naming'] = kwargs.get(
|
|
616
|
+
'_spec_property_naming', False
|
|
617
|
+
)
|
|
618
|
+
kwargs['_content_type'] = kwargs.get(
|
|
619
|
+
'_content_type')
|
|
620
|
+
kwargs['_host_index'] = kwargs.get('_host_index')
|
|
621
|
+
kwargs['batch_aliases_request'] = \
|
|
622
|
+
batch_aliases_request
|
|
623
|
+
return self.delete_aliases_endpoint.call_with_http_info(**kwargs)
|
|
624
|
+
|
|
457
625
|
def reveal_alias(
|
|
458
626
|
self,
|
|
459
627
|
alias,
|
|
@@ -472,6 +640,7 @@ class AliasesApi(object):
|
|
|
472
640
|
alias (str): Alias to operate on.
|
|
473
641
|
|
|
474
642
|
Keyword Args:
|
|
643
|
+
storage (str): [optional] if omitted the server will use the default value of "PERSISTENT"
|
|
475
644
|
_return_http_data_only (bool): response data without head status
|
|
476
645
|
code and headers. Default is True.
|
|
477
646
|
_preload_content (bool): if False, the urllib3.HTTPResponse object
|
|
@@ -534,7 +703,7 @@ class AliasesApi(object):
|
|
|
534
703
|
|
|
535
704
|
def reveal_multiple_aliases(
|
|
536
705
|
self,
|
|
537
|
-
|
|
706
|
+
aliases,
|
|
538
707
|
**kwargs
|
|
539
708
|
):
|
|
540
709
|
"""Reveal multiple aliases # noqa: E501
|
|
@@ -543,13 +712,14 @@ class AliasesApi(object):
|
|
|
543
712
|
This method makes a synchronous HTTP request by default. To make an
|
|
544
713
|
asynchronous HTTP request, please pass async_req=True
|
|
545
714
|
|
|
546
|
-
>>> thread = api.reveal_multiple_aliases(
|
|
715
|
+
>>> thread = api.reveal_multiple_aliases(aliases, async_req=True)
|
|
547
716
|
>>> result = thread.get()
|
|
548
717
|
|
|
549
718
|
Args:
|
|
550
|
-
|
|
719
|
+
aliases (str): Comma-separated list of aliases to reveal.
|
|
551
720
|
|
|
552
721
|
Keyword Args:
|
|
722
|
+
storage (str): PERSISTENT or VOLATILE storage. [optional]
|
|
553
723
|
_return_http_data_only (bool): response data without head status
|
|
554
724
|
code and headers. Default is True.
|
|
555
725
|
_preload_content (bool): if False, the urllib3.HTTPResponse object
|
|
@@ -606,8 +776,8 @@ class AliasesApi(object):
|
|
|
606
776
|
kwargs['_content_type'] = kwargs.get(
|
|
607
777
|
'_content_type')
|
|
608
778
|
kwargs['_host_index'] = kwargs.get('_host_index')
|
|
609
|
-
kwargs['
|
|
610
|
-
|
|
779
|
+
kwargs['aliases'] = \
|
|
780
|
+
aliases
|
|
611
781
|
return self.reveal_multiple_aliases_endpoint.call_with_http_info(**kwargs)
|
|
612
782
|
|
|
613
783
|
def update_alias(
|
|
@@ -628,6 +798,7 @@ class AliasesApi(object):
|
|
|
628
798
|
alias (str): Alias to operate on.
|
|
629
799
|
|
|
630
800
|
Keyword Args:
|
|
801
|
+
storage (str): [optional] if omitted the server will use the default value of "PERSISTENT"
|
|
631
802
|
update_alias_request (UpdateAliasRequest): [optional]
|
|
632
803
|
_return_http_data_only (bool): response data without head status
|
|
633
804
|
code and headers. Default is True.
|
vgs_api_client/api_client.py
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
"""
|
|
2
2
|
Vault HTTP API
|
|
3
3
|
|
|
4
|
-
The VGS Vault HTTP API is used for storing, retrieving, and managing sensitive data (aka Tokenization) within a VGS Vault. The VGS API is organized around REST. Our API is built with a predictable resource-oriented structure, uses JSON-encoded requests and responses, follows standard HTTP verbs/responses, and uses industry standard authentication. ## What is VGS Storing sensitive data on your company’s infrastructure often comes with a heavy compliance burden. For instance, storing payments data yourself greatly increases the amount of work needed to become PCI compliant. It also increases your security risk in general. To combat this, companies will minimize the amount of sensitive information they have to handle or store. VGS provides multiple methods for minimizing the sensitive information that needs to be stored which allows customers to secure any type of data for any use-case. **Tokenization** is a method that focuses on securing the storage of data. This is the quickest way to get started and is free. [Get started with Tokenization](https://www.verygoodsecurity.com/docs/tokenization/getting-started). **Zero Data** is a unique method invented by VGS in 2016 that securely stores data like Tokenization, however it also removes the customer’s environment from PCI scope completely providing maximum security, and minimum compliance scope. [Get started with Zero Data](https://www.verygoodsecurity.com/docs/getting-started/before-you-start). Additionally, for scenarios where neither technology is a complete solution, for instance with legacy systems, VGS provides a compliance product which guarantees customers are able to meet their compliance needs no matter what may happen. [Get started with Control](https://www.verygoodsecurity.com/docs/control). ## Learn about Tokenization - [Create an Account for Free Tokenization](https://dashboard.verygoodsecurity.com/tokenization) - [Try a Tokenization Demo](https://www.verygoodsecurity.com/docs/tokenization/getting-started) - [Install a Tokenization SDK](https://www.verygoodsecurity.com/docs/tokenization/client-libraries) ### Authentication This API uses `Basic` authentication and is implemented using industry best practices to ensure the security of the connection. Read more about [Identity and Access Management at VGS](https://www.verygoodsecurity.com/docs/vault/the-platform/iam) Credentials to access the API can be generated on the [dashboard](https://dashboard.verygoodsecurity.com) by going to the Settings section of the vault of your choosing. [Docs » Guides » Access credentials](https://www.verygoodsecurity.com/docs/settings/access-credentials) ## Resource Limits ### Data Limits This API allows storing data up to 32MB in size. ### Rate Limiting The API allows up to 3,000 requests per minute. Requests are associated with the vault, regardless of the access credentials used to authenticate the request. Your current rate limit is included as HTTP headers in every API response: | Header Name | Description | |-------------------------|----------------------------------------------------------| | `x-ratelimit-remaining` | The number of requests remaining in the 1-minute window. | If you exceed the rate limit, the API will reject the request with HTTP [429 Too Many Requests](https://developer.mozilla.org/en-US/docs/Web/HTTP/Status/429). ### Errors The API uses standard HTTP status codes to indicate whether the request succeeded or not. In case of failure, the response body will be JSON in a predefined format. For example, trying to create too many aliases at once results in the following response: ```json { \"errors\": [ { \"status\": 400, \"title\": \"Bad request\", \"detail\": \"Too many values (limit: 20)\", \"href\": \"https://api.sandbox.verygoodvault.com/aliases\" } ] } ``` # noqa: E501
|
|
4
|
+
The VGS Vault HTTP API is used for storing, retrieving, and managing sensitive data (aka Tokenization) within a VGS Vault. The VGS API is organized around REST. Our API is built with a predictable resource-oriented structure, uses JSON-encoded requests and responses, follows standard HTTP verbs/responses, and uses industry standard authentication. ## What is VGS Storing sensitive data on your company’s infrastructure often comes with a heavy compliance burden. For instance, storing payments data yourself greatly increases the amount of work needed to become PCI compliant. It also increases your security risk in general. To combat this, companies will minimize the amount of sensitive information they have to handle or store. VGS provides multiple methods for minimizing the sensitive information that needs to be stored which allows customers to secure any type of data for any use-case. **Tokenization** is a method that focuses on securing the storage of data. This is the quickest way to get started and is free. [Get started with Tokenization](https://www.verygoodsecurity.com/docs/tokenization/getting-started). **Zero Data** is a unique method invented by VGS in 2016 that securely stores data like Tokenization, however it also removes the customer’s environment from PCI scope completely providing maximum security, and minimum compliance scope. [Get started with Zero Data](https://www.verygoodsecurity.com/docs/getting-started/before-you-start). Additionally, for scenarios where neither technology is a complete solution, for instance with legacy systems, VGS provides a compliance product which guarantees customers are able to meet their compliance needs no matter what may happen. [Get started with Control](https://www.verygoodsecurity.com/docs/control). ## Learn about Tokenization - [Create an Account for Free Tokenization](https://dashboard.verygoodsecurity.com/tokenization) - [Try a Tokenization Demo](https://www.verygoodsecurity.com/docs/tokenization/getting-started) - [Install a Tokenization SDK](https://www.verygoodsecurity.com/docs/tokenization/client-libraries) ## Introduction ### Alias-Formats | Format | Description | |---------------------------------|-------------------------------------------------------------------------------------------| | UUID | Generic - VGS Alias (Default) - tok_sandbox_xxxxxxxxxxxxxxxxxxxxxxxxx | | NUM_LENGTH_PRESERVING | Generic - Numeric Length Preserving - xxxxxxxxxxxxxxxx | | FPE_SIX_T_FOUR | Payment Card - Format Preserving, Luhn Valid (6T4) - <first_six>xxxxxx<last_four> | | FPE_T_FOUR | Payment Card - Format Preserving, Luhn Valid (T4) - xxxxxxxxxxxx<last_four> | | PFPT | Payment Card - Prefixed, Luhn Valid, 19 Digits Fixed Length - xxxxxxxxxxxxxxxxxxx | | NON_LUHN_FPE_ALPHANUMERIC | Payment Card - Format Preserving - Non Luhn Valid - xxxxxxxxxxxxxxxx | | FPE_SSN_T_FOUR | SSN - Format Preserving (A4) - xxx-xx-<last_four> | | FPE_ACC_NUM_T_FOUR | Account Number - Numeric Length Preserving (A4) - xxxxxxxxxxxx<last_four> | | FPE_ALPHANUMERIC_ACC_NUM_T_FOUR | Account Number - Alphanumeric Length Preserving (A4) - xxxxxxxxxxxx<last_four> | | GENERIC_T_FOUR | Generic - VGS Alias Last Four (T4) - tok_sandbox_xxxxxxxxxxxxxxxxxxxxxxxxx_<last_four> | | RAW_UUID | Generic - UUID - xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx | | ALPHANUMERIC_SIX_T_FOUR | Numeric - Include Alphanumeric, 19 symbols length (6T4) - <first_six>xxxxxxxxx<last_four> | | VGS_FIXED_LEN_GENERIC | Generic - VGS Alphanumeric Fixed Length, 29 characters - vgsxxxxxxxxxxxxxxxxxxxxxxxxxx | ## Authentication This API uses `Basic` authentication and is implemented using industry best practices to ensure the security of the connection. Read more about [Identity and Access Management at VGS](https://www.verygoodsecurity.com/docs/vault/the-platform/iam) Credentials to access the API can be generated on the [dashboard](https://dashboard.verygoodsecurity.com) by going to the Settings section of the vault of your choosing. [Docs » Guides » Access credentials](https://www.verygoodsecurity.com/docs/settings/access-credentials) ## Resource Limits ### Data Limits This API allows storing data up to 32MB in size. ### Rate Limiting The API allows up to 3,000 requests per minute. Requests are associated with the vault, regardless of the access credentials used to authenticate the request. Your current rate limit is included as HTTP headers in every API response: | Header Name | Description | |-------------------------|----------------------------------------------------------| | `x-ratelimit-remaining` | The number of requests remaining in the 1-minute window. | If you exceed the rate limit, the API will reject the request with HTTP [429 Too Many Requests](https://developer.mozilla.org/en-US/docs/Web/HTTP/Status/429). ### Errors The API uses standard HTTP status codes to indicate whether the request succeeded or not. In case of failure, the response body will be JSON in a predefined format. For example, trying to create too many aliases at once results in the following response: ```json { \"errors\": [ { \"status\": 400, \"title\": \"Bad request\", \"detail\": \"Too many values (limit: 20)\", \"href\": \"https://api.sandbox.verygoodvault.com/aliases\" } ] } ``` # noqa: E501
|
|
5
5
|
|
|
6
6
|
The version of the OpenAPI document: 1.0.0
|
|
7
7
|
Contact: support@verygoodsecurity.com
|
|
@@ -77,7 +77,7 @@ class ApiClient(object):
|
|
|
77
77
|
self.default_headers[header_name] = header_value
|
|
78
78
|
self.cookie = cookie
|
|
79
79
|
# Set default User-Agent.
|
|
80
|
-
self.user_agent = 'vgs-api-client/0.0.
|
|
80
|
+
self.user_agent = 'vgs-api-client/0.0.47/python'
|
|
81
81
|
|
|
82
82
|
def __enter__(self):
|
|
83
83
|
return self
|
vgs_api_client/configuration.py
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
"""
|
|
2
2
|
Vault HTTP API
|
|
3
3
|
|
|
4
|
-
The VGS Vault HTTP API is used for storing, retrieving, and managing sensitive data (aka Tokenization) within a VGS Vault. The VGS API is organized around REST. Our API is built with a predictable resource-oriented structure, uses JSON-encoded requests and responses, follows standard HTTP verbs/responses, and uses industry standard authentication. ## What is VGS Storing sensitive data on your company’s infrastructure often comes with a heavy compliance burden. For instance, storing payments data yourself greatly increases the amount of work needed to become PCI compliant. It also increases your security risk in general. To combat this, companies will minimize the amount of sensitive information they have to handle or store. VGS provides multiple methods for minimizing the sensitive information that needs to be stored which allows customers to secure any type of data for any use-case. **Tokenization** is a method that focuses on securing the storage of data. This is the quickest way to get started and is free. [Get started with Tokenization](https://www.verygoodsecurity.com/docs/tokenization/getting-started). **Zero Data** is a unique method invented by VGS in 2016 that securely stores data like Tokenization, however it also removes the customer’s environment from PCI scope completely providing maximum security, and minimum compliance scope. [Get started with Zero Data](https://www.verygoodsecurity.com/docs/getting-started/before-you-start). Additionally, for scenarios where neither technology is a complete solution, for instance with legacy systems, VGS provides a compliance product which guarantees customers are able to meet their compliance needs no matter what may happen. [Get started with Control](https://www.verygoodsecurity.com/docs/control). ## Learn about Tokenization - [Create an Account for Free Tokenization](https://dashboard.verygoodsecurity.com/tokenization) - [Try a Tokenization Demo](https://www.verygoodsecurity.com/docs/tokenization/getting-started) - [Install a Tokenization SDK](https://www.verygoodsecurity.com/docs/tokenization/client-libraries) ### Authentication This API uses `Basic` authentication and is implemented using industry best practices to ensure the security of the connection. Read more about [Identity and Access Management at VGS](https://www.verygoodsecurity.com/docs/vault/the-platform/iam) Credentials to access the API can be generated on the [dashboard](https://dashboard.verygoodsecurity.com) by going to the Settings section of the vault of your choosing. [Docs » Guides » Access credentials](https://www.verygoodsecurity.com/docs/settings/access-credentials) ## Resource Limits ### Data Limits This API allows storing data up to 32MB in size. ### Rate Limiting The API allows up to 3,000 requests per minute. Requests are associated with the vault, regardless of the access credentials used to authenticate the request. Your current rate limit is included as HTTP headers in every API response: | Header Name | Description | |-------------------------|----------------------------------------------------------| | `x-ratelimit-remaining` | The number of requests remaining in the 1-minute window. | If you exceed the rate limit, the API will reject the request with HTTP [429 Too Many Requests](https://developer.mozilla.org/en-US/docs/Web/HTTP/Status/429). ### Errors The API uses standard HTTP status codes to indicate whether the request succeeded or not. In case of failure, the response body will be JSON in a predefined format. For example, trying to create too many aliases at once results in the following response: ```json { \"errors\": [ { \"status\": 400, \"title\": \"Bad request\", \"detail\": \"Too many values (limit: 20)\", \"href\": \"https://api.sandbox.verygoodvault.com/aliases\" } ] } ``` # noqa: E501
|
|
4
|
+
The VGS Vault HTTP API is used for storing, retrieving, and managing sensitive data (aka Tokenization) within a VGS Vault. The VGS API is organized around REST. Our API is built with a predictable resource-oriented structure, uses JSON-encoded requests and responses, follows standard HTTP verbs/responses, and uses industry standard authentication. ## What is VGS Storing sensitive data on your company’s infrastructure often comes with a heavy compliance burden. For instance, storing payments data yourself greatly increases the amount of work needed to become PCI compliant. It also increases your security risk in general. To combat this, companies will minimize the amount of sensitive information they have to handle or store. VGS provides multiple methods for minimizing the sensitive information that needs to be stored which allows customers to secure any type of data for any use-case. **Tokenization** is a method that focuses on securing the storage of data. This is the quickest way to get started and is free. [Get started with Tokenization](https://www.verygoodsecurity.com/docs/tokenization/getting-started). **Zero Data** is a unique method invented by VGS in 2016 that securely stores data like Tokenization, however it also removes the customer’s environment from PCI scope completely providing maximum security, and minimum compliance scope. [Get started with Zero Data](https://www.verygoodsecurity.com/docs/getting-started/before-you-start). Additionally, for scenarios where neither technology is a complete solution, for instance with legacy systems, VGS provides a compliance product which guarantees customers are able to meet their compliance needs no matter what may happen. [Get started with Control](https://www.verygoodsecurity.com/docs/control). ## Learn about Tokenization - [Create an Account for Free Tokenization](https://dashboard.verygoodsecurity.com/tokenization) - [Try a Tokenization Demo](https://www.verygoodsecurity.com/docs/tokenization/getting-started) - [Install a Tokenization SDK](https://www.verygoodsecurity.com/docs/tokenization/client-libraries) ## Introduction ### Alias-Formats | Format | Description | |---------------------------------|-------------------------------------------------------------------------------------------| | UUID | Generic - VGS Alias (Default) - tok_sandbox_xxxxxxxxxxxxxxxxxxxxxxxxx | | NUM_LENGTH_PRESERVING | Generic - Numeric Length Preserving - xxxxxxxxxxxxxxxx | | FPE_SIX_T_FOUR | Payment Card - Format Preserving, Luhn Valid (6T4) - <first_six>xxxxxx<last_four> | | FPE_T_FOUR | Payment Card - Format Preserving, Luhn Valid (T4) - xxxxxxxxxxxx<last_four> | | PFPT | Payment Card - Prefixed, Luhn Valid, 19 Digits Fixed Length - xxxxxxxxxxxxxxxxxxx | | NON_LUHN_FPE_ALPHANUMERIC | Payment Card - Format Preserving - Non Luhn Valid - xxxxxxxxxxxxxxxx | | FPE_SSN_T_FOUR | SSN - Format Preserving (A4) - xxx-xx-<last_four> | | FPE_ACC_NUM_T_FOUR | Account Number - Numeric Length Preserving (A4) - xxxxxxxxxxxx<last_four> | | FPE_ALPHANUMERIC_ACC_NUM_T_FOUR | Account Number - Alphanumeric Length Preserving (A4) - xxxxxxxxxxxx<last_four> | | GENERIC_T_FOUR | Generic - VGS Alias Last Four (T4) - tok_sandbox_xxxxxxxxxxxxxxxxxxxxxxxxx_<last_four> | | RAW_UUID | Generic - UUID - xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx | | ALPHANUMERIC_SIX_T_FOUR | Numeric - Include Alphanumeric, 19 symbols length (6T4) - <first_six>xxxxxxxxx<last_four> | | VGS_FIXED_LEN_GENERIC | Generic - VGS Alphanumeric Fixed Length, 29 characters - vgsxxxxxxxxxxxxxxxxxxxxxxxxxx | ## Authentication This API uses `Basic` authentication and is implemented using industry best practices to ensure the security of the connection. Read more about [Identity and Access Management at VGS](https://www.verygoodsecurity.com/docs/vault/the-platform/iam) Credentials to access the API can be generated on the [dashboard](https://dashboard.verygoodsecurity.com) by going to the Settings section of the vault of your choosing. [Docs » Guides » Access credentials](https://www.verygoodsecurity.com/docs/settings/access-credentials) ## Resource Limits ### Data Limits This API allows storing data up to 32MB in size. ### Rate Limiting The API allows up to 3,000 requests per minute. Requests are associated with the vault, regardless of the access credentials used to authenticate the request. Your current rate limit is included as HTTP headers in every API response: | Header Name | Description | |-------------------------|----------------------------------------------------------| | `x-ratelimit-remaining` | The number of requests remaining in the 1-minute window. | If you exceed the rate limit, the API will reject the request with HTTP [429 Too Many Requests](https://developer.mozilla.org/en-US/docs/Web/HTTP/Status/429). ### Errors The API uses standard HTTP status codes to indicate whether the request succeeded or not. In case of failure, the response body will be JSON in a predefined format. For example, trying to create too many aliases at once results in the following response: ```json { \"errors\": [ { \"status\": 400, \"title\": \"Bad request\", \"detail\": \"Too many values (limit: 20)\", \"href\": \"https://api.sandbox.verygoodvault.com/aliases\" } ] } ``` # noqa: E501
|
|
5
5
|
|
|
6
6
|
The version of the OpenAPI document: 1.0.0
|
|
7
7
|
Contact: support@verygoodsecurity.com
|
|
@@ -405,7 +405,7 @@ conf = vgs_api_client.Configuration(
|
|
|
405
405
|
"OS: {env}\n"\
|
|
406
406
|
"Python Version: {pyversion}\n"\
|
|
407
407
|
"Version of the API: 1.0.0\n"\
|
|
408
|
-
"SDK Package Version: 0.0.
|
|
408
|
+
"SDK Package Version: 0.0.47".\
|
|
409
409
|
format(env=sys.platform, pyversion=sys.version)
|
|
410
410
|
|
|
411
411
|
def get_host_settings(self):
|