DSR Operations
The Qarion SDK provides methods for submitting and managing GDPR Data Subject Requests (DSR) programmatically.
Usage
Submit a DSR via OpenDSR
from qarion import QarionClient
client = QarionClient(api_key="qk_...")
# Submit an erasure request
response = client.opendsr.create_request(
subject_request_type="erasure",
subject_identities=[
{"identity_type": "email", "identity_value": "user@example.com"}
],
status_callback_url="https://your-system.com/dsr/callback",
)
print(f"Request ID: {response.request_id}")
print(f"Status: {response.status}")
Check Request Status
status = client.opendsr.get_request(request_id="...")
print(f"Status: {status.status}")
print(f"Created: {status.created_at}")
Cancel a Pending Request
client.opendsr.cancel_request(request_id="...")
Admin: Export User Data
# Export all personal data for a user (admin only)
export = client.dsr.export_user_data(
user_id="...",
export_format="json",
)
print(f"Exported {len(export.data)} categories")
Admin: Erasure Dry Run
preview = client.dsr.erasure_dry_run(user_id="...")
print(f"Records to delete: {preview.records_to_delete}")
print(f"Records to anonymize: {preview.records_to_anonymize}")
Admin: Execute Erasure
result = client.dsr.erasure_execute(
user_id="...",
confirm_irreversible=True,
)
print(f"Total affected: {result.total_affected}")
Related
- DSR API Reference — Admin DSR endpoints
- OpenDSR API Reference — Standards-compliant API