Vault HTTP API
Project description
vgs api client
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.
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.
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.
Learn about Tokenization
Authentication
This API uses Basic
authentication.
Credentials to access the API can be generated on the dashboard by going to the Settings section of the vault of your choosing.
Docs » Guides » 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.
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:
{
\"errors\": [
{
\"status\": 400,
\"title\": \"Bad request\",
\"detail\": \"Too many values (limit: 20)\",
\"href\": \"https://api.sandbox.verygoodvault.com/aliases\"
}
]
}
This Python package is automatically generated by the OpenAPI Generator project:
- API version: 1.0.0
- Package version: 0.0.1dev202204131316
- Build package: org.openapitools.codegen.languages.PythonClientCodegen
Requirements.
Python >=3.6
Installation & Usage
pip install
If the python package is hosted on a repository, you can install directly using:
pip install git+https://github.com/verygoodsecurity/vgs-api-client-python.git
(you may need to run pip
with root permission: sudo pip install git+https://github.com/verygoodsecurity/vgs-api-client-python.git
)
Then import the package:
import vgs_api_client
Setuptools
Install via Setuptools.
python setup.py install --user
(or sudo python setup.py install
to install the package for all users)
Then import the package:
import vgs_api_client
Getting Started
Please follow the installation procedure and then run the following:
import time
import vgs_api_client
from pprint import pprint
from vgs_api_client.api import aliases_api
from vgs_api_client.model.create_aliases_request import CreateAliasesRequest
from vgs_api_client.model.inline_response200 import InlineResponse200
from vgs_api_client.model.inline_response2001 import InlineResponse2001
from vgs_api_client.model.inline_response201 import InlineResponse201
from vgs_api_client.model.inline_response_default import InlineResponseDefault
from vgs_api_client.model.update_alias_request import UpdateAliasRequest
# Defining the host is optional and defaults to https://api.sandbox.verygoodvault.com
# See configuration.py for a list of all supported configuration parameters.
configuration = vgs_api_client.Configuration(
host = "https://api.sandbox.verygoodvault.com"
)
# The client must configure the authentication and authorization parameters
# in accordance with the API server security policy.
# Examples for each auth method are provided below, use the example that
# satisfies your auth use case.
# Configure HTTP basic authorization: basicAuth
configuration = vgs_api_client.Configuration(
username = 'YOUR_USERNAME',
password = 'YOUR_PASSWORD'
)
# Enter a context with an instance of the API client
with vgs_api_client.ApiClient(configuration) as api_client:
# Create an instance of the API class
api_instance = aliases_api.AliasesApi(api_client)
create_aliases_request = CreateAliasesRequest(
data=[
None,
],
) # CreateAliasesRequest | (optional)
try:
# Create aliases
api_response = api_instance.create_aliases(create_aliases_request=create_aliases_request)
pprint(api_response)
except vgs_api_client.ApiException as e:
print("Exception when calling AliasesApi->create_aliases: %s\n" % e)
Documentation for API Endpoints
All URIs are relative to https://api.sandbox.verygoodvault.com
Class | Method | HTTP request | Description |
---|---|---|---|
AliasesApi | create_aliases | POST /aliases | Create aliases |
AliasesApi | delete_alias | DELETE /aliases/{alias} | Delete alias |
AliasesApi | reveal_alias | GET /aliases/{alias} | Reveal single alias |
AliasesApi | reveal_multiple_aliases | GET /aliases | Reveal multiple aliases |
AliasesApi | update_alias | PUT /aliases/{alias} | Update data classifiers |
Documentation For Models
- Alias
- AliasFormat
- ApiError
- CreateAliasesRequest
- CreateAliasesRequestNew
- CreateAliasesRequestReference
- InlineResponse200
- InlineResponse2001
- InlineResponse201
- InlineResponseDefault
- RevealedData
- UpdateAliasRequest
- UpdateAliasRequestData
Documentation For Authorization
basicAuth
- Type: HTTP basic authentication
Author
Notes for Large OpenAPI documents
If the OpenAPI document is large, imports in vgs_api_client.apis and vgs_api_client.models may fail with a RecursionError indicating the maximum recursion limit has been exceeded. In that case, there are a couple of solutions:
Solution 1: Use specific imports for apis and models like:
from vgs_api_client.api.default_api import DefaultApi
from vgs_api_client.model.pet import Pet
Solution 2: Before importing the package, adjust the maximum recursion limit as shown below:
import sys
sys.setrecursionlimit(1500)
import vgs_api_client
from vgs_api_client.apis import *
from vgs_api_client.models import *
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distributions
Built Distribution
File details
Details for the file vgs_api_client-0.0.1.dev202204131316-py3-none-any.whl
.
File metadata
- Download URL: vgs_api_client-0.0.1.dev202204131316-py3-none-any.whl
- Upload date:
- Size: 108.2 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/4.0.0 CPython/3.9.2
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | fcf3153ea52ee2278323815f369e6f11a433e5d9a6ddaf9b123818f458d4f732 |
|
MD5 | b0740e7c9e048cac07ea3cbc5a0bd4f6 |
|
BLAKE2b-256 | addf096265049cafdbb82605f31bb6e12c174fa66eff7c9d3bccebb656e4ae61 |