Skip to main content

Evervault SDK

Project description

Evervault

Unit Tests Status

Evervault Python SDK

The Evervault Python SDK is a toolkit for encrypting data as it enters your server, and working with Cages.

Getting Started

Before starting with the Evervault Python SDK, you will need to create an account and a team.

For full installation support, book time here.

Documentation

See the Evervault Python SDK documentation.

Installation

Our Python SDK is distributed via pypi, and can be installed using pip.

pip install evervault

Setup

To make Evervault available for use in your app:

import evervault

# Initialize the client with your team's api key
evervault.api_key = <YOUR-API-KEY>

# Encrypt your data and run a cage
result = evervault.encrypt_and_run(<CAGE-NAME>, { 'hello': 'World!' })

Reference

The Evervault Python SDK exposes five functions.

evervault.encrypt()

evervault.encrypt() encrypts data for use in your Cages. To encrypt data at the server, simply pass a python primitive type into the evervault.encrypt() function. Store the encrypted data in your database as normal.

evervault.encrypt(data = dict | list | set | str | int | bool)
Parameter Type Description
data dict, list, set, str, int, bool Data to be encrypted

evervault.run()

evervault.run() invokes a Cage with a given payload.

evervault.run(cageName = str, payload = dict[, options = dict])
Parameter Type Description
cageName str Name of the Cage to be run
data dict Payload for the Cage
options dict Options for the Cage run.

Cage Run Options

Option Type Default Description
async Boolean False Run your Cage in async mode. Async Cage runs will be queued for processing.
version Integer None Specify the version of your Cage to run. By default, the latest version will be run.

evervault.encryptAndRun()

evervault.encryptAndRun() encrypts data and uses it as the payload to invoke the Cage.

evervault.encrypt_and_run(cageName = str, data = dict[, options = dict])
Parameter Type Description
cageName str Name of the Cage to be run
data dict Data to be encrypted
options dict Options for the Cage run.

evervault.cages()

Return a dict of your team's Cage objects in dict format, with cage-name as keys.

evervault.relay()

You may configure the SDK to automatically route all outbound HTTPS requests through Relay by calling the relay() function. This currently supports requests made using the popular requests package.

evervault.relay()
# all further HTTPS requests made in your program will be routed through Relay

You may also optionally pass in a list of domains which you don't want to go through Relay, i.e. requests sent to these domains will not be decrypted.

evervault.relay(['httpbin.org', 'www.facebook.com'])
# requests sent to urls such as https://httpbin.org/post or https://api.facebook.com will not be sent through Relay

Contributing

Bug reports and pull requests are welcome on GitHub at https://github.com/evervault/evervault-python.

Feedback

Questions or feedback? Let us know.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

evervault-0.1.8.tar.gz (11.6 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

evervault-0.1.8-py3-none-any.whl (14.5 kB view details)

Uploaded Python 3

File details

Details for the file evervault-0.1.8.tar.gz.

File metadata

  • Download URL: evervault-0.1.8.tar.gz
  • Upload date:
  • Size: 11.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.4.1 importlib_metadata/4.5.0 pkginfo/1.7.0 requests/2.25.1 requests-toolbelt/0.9.1 tqdm/4.61.1 CPython/3.9.5

File hashes

Hashes for evervault-0.1.8.tar.gz
Algorithm Hash digest
SHA256 a340fd078c5bc2837d5f65fc6f5d655cc4c3a081873dcaf73732efef983fd2c1
MD5 440482452324d0ce24c5920a7914c046
BLAKE2b-256 852e9d99b4d46ec29f8f27065d334272800a2a25e623e7d3581b11cf8e5c7c99

See more details on using hashes here.

File details

Details for the file evervault-0.1.8-py3-none-any.whl.

File metadata

  • Download URL: evervault-0.1.8-py3-none-any.whl
  • Upload date:
  • Size: 14.5 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.4.1 importlib_metadata/4.5.0 pkginfo/1.7.0 requests/2.25.1 requests-toolbelt/0.9.1 tqdm/4.61.1 CPython/3.9.5

File hashes

Hashes for evervault-0.1.8-py3-none-any.whl
Algorithm Hash digest
SHA256 6f12736322792f184d69d09062a8b5c7862885243eb12d3d89a2f3b804dc6a40
MD5 a4b642657e7d8c33231806941eb87467
BLAKE2b-256 222b4b2eeb206a593f966a503a1849a4048d574d93129cd397ea0841fd738b02

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page