Skip to content

datamasque/datamasque-python

Repository files navigation

datamasque-python

Official Python client for the DataMasque platform.

DataMasque is a data masking platform that replaces sensitive data with realistic but non-production values, so teams can use production-shaped data in non-production environments without exposing PII. This package is a thin Python wrapper around the DataMasque server's HTTP API, covering connection management, ruleset and ruleset-library CRUD, masking run lifecycle, discovery results, user administration, and license management.

Installation

pip install datamasque-python

Python 3.9 or newer is required.

Quickstart

from datamasque.client import DataMasqueClient
from datamasque.client.models.dm_instance import DataMasqueInstanceConfig

config = DataMasqueInstanceConfig(
    base_url="https://datamasque.example.com",
    username="api_user",
    password="api_password",
)
client = DataMasqueClient(config)
client.authenticate()

for connection in client.list_connections():
    print(connection.name)

Authentication is performed on the first request if authenticate() is not called explicitly, and is automatically retried once on a 401 response. client.healthcheck() is available as a lightweight readiness probe that does not consume credentials.

Error handling

All methods raise subclasses of DataMasqueException on failure:

  • DataMasqueApiError — the server responded with a non-2xx status (excluding 502). The triggering Response is available on the .response attribute.
  • DataMasqueNotReadyError — the server responded with 502, typically because it is still starting up.
  • DataMasqueTransportError — the request failed before any response was received (connection refused, timeout, DNS failure, SSL handshake failure, etc.).
  • FailedToStartError / InvalidRulesetError / InvalidLibraryError — raised by start_masking_run when the server rejects the run.
  • DataMasqueUserError — raised by user-management methods when the input is invalid.

Documentation

Contributing

See CONTRIBUTING.rst for development setup, testing, and the pull request flow.

License

Apache License 2.0. See LICENSE.

About

Python client for DataMasque

Resources

License

Contributing

Stars

Watchers

Forks

Packages

 
 
 

Contributors