Skip to main content

Basis Theory Python SDK

Release

The Basis Theory Python SDK for Python >=3.7

Installation

pip install

From the git repository

pip install git+https://github.com/Basis-Theory/basistheory-python.git

(you may need to run pip with root permission: sudo pip install git+https://github.com/Basis-Theory/basistheory-python.git)

Then import the package:

import basistheory

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 basistheory

Locally

To install your latest changes locally run:

python3 -m pip install .

Documentation

If you need any assistance, please contact support@basistheory.com at this time.

Client Methods

All URIs are relative to https://api.basistheory.com

Class Method HTTP request
TokensApi create POST /tokens
TokensApi delete DELETE /tokens/{id}
TokensApi get_by_id GET /tokens/{id}
TokensApi list GET /tokens

Models

Usage

Per-request configuration

All of the client methods accept an optional RequestOptions object.
This is used if you want to set a correlation ID or if you want to set a per-request BT-API-KEY

import uuid
import basistheory
from basistheory.request_options import RequestOptions

request_options = RequestOptions(api_key="API KEY", correlation_id=uuid.uuid4())

Client Configuration

Each Api client can be configured to use a custom API url and client-wide BT-API-KEY.

import basistheory
from basistheory.api import tokens_api

configuration = basistheory.Configuration(
    host = "https://token-proxy.somedomain.com",
    api_key = "API KEY"
)

with basistheory.ApiClient(configuration) as api_client:
    # Create a token client w/ global configuration for all requests
    token_client = tokens_api.TokensApi(api_client)

Getting Started

Quick example creating a token and then retrieving it.

import uuid
import basistheory
from pprint import pprint
from basistheory.api import tokens_api
from basistheory.model.create_token_request import CreateTokenRequest
from basistheory.request_options import RequestOptions

# Defining client wide api_key
configuration = basistheory.Configuration(
    api_key = "API KEY"
)

with basistheory.ApiClient(configuration) as api_client:
    # Create an instance of the tokens API client
    token_client = tokens_api.TokensApi(api_client)

    # Setting a correlation Id
    request_options = RequestOptions(correlation_id=uuid.uuid4().__str__())

    # Token request object
    request = CreateTokenRequest(type="token", data="My Secret Data")

    try:
        # Creating the token
        created_token = token_client.create(create_token_request=request, request_options=request_options)
        pprint(created_token)

        # Retrieving it (requires read permission on the token type classification and impact level)
        retrieved_token = token_client.get_by_id(id=created_token.id)
        pprint(retrieved_token)
    except basistheory.ApiException as e:
        print("Exception when calling TokensApi: %s\n" % e)

Release files for basistheory 3.0.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for basistheory 3.0.0
File Size Uploaded
basistheory-3.0.0.tar.gz 108.6 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for basistheory 3.0.0
File Interpreter ABI Platform
basistheory-3.0.0-py3-none-any.whl Python 3 none any Details

Total release size: 498.7 kB

Release files / basistheory-3.0.0.tar.gz

Download URL basistheory-3.0.0.tar.gz
Size 108.6 kB
Tags Source
SHA-256 checksum
How to use checksums
4c55e8f5a63c07ec22ec3ac43a83dae729341c2dcdf8eae4e65fa9c9c0165466
BLAKE2b-256 checksum
How to use checksums
f6674ca9eff8f0acf9ebf42a61f26947229f5eca2c33734d4ff2257291bf7d14
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/5.1.1 CPython/3.8.18

Release files / basistheory-3.0.0-py3-none-any.whl

Download URL basistheory-3.0.0-py3-none-any.whl
Size 390.1 kB
Tags Python 3
SHA-256 checksum
How to use checksums
702119c56d4067d2eedb38c2a4aade73eb272147a724491c80114afecb27ca9c
BLAKE2b-256 checksum
How to use checksums
98edc5c56fc0b8c19128eb294fa461f0908e5005e41af790b466e038ac9e85c4
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/5.1.1 CPython/3.8.18

Release history Release notifications | RSS feed

This release

3.0.0 This release

2 release files

2.2.0

2 release files

2.1.0

2 release files

2.0.0

2 release files

1.11.3

2 release files

1.11.2

2 release files

1.11.1

2 release files

1.11.0

2 release files

1.10.2

2 release files

1.10.1

2 release files

1.10.0

2 release files

1.9.0

2 release files

1.8.0

3 release files

1.7.0

3 release files

1.6.1

3 release files

1.6.0

3 release files

1.5.0

3 release files

1.4.1

3 release files

1.4.0

3 release files

1.3.0

3 release files

1.2.0

3 release files

1.0.0

2 release files

0.14.0

2 release files

0.13.0

2 release files

0.12.0

2 release files

0.11.0

2 release files

0.10.0

2 release files

0.9.1

2 release files

0.9.0

2 release files

0.8.1

2 release files

0.8.0

2 release files

0.7.0

2 release files

0.6.1

2 release files

0.6.0

2 release files

0.5.0

2 release files

0.4.0

2 release files

0.3.0

2 release files

0.2.0

2 release files

0.1.2

2 release files

0.1.1

2 release files

0.1.0

2 release files

0.0.1

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page