Client for interacting with Pinapple
Project description
🍍 PinappleClient
A Python client for interacting with the Pinapple encryption API.
🚀 Features
- Authentication 🔐 - Token-based API authentication
- Flexible Encryption ⚡ - Support for strict and loose encryption modes
- Fallback Strategy 🔄 - Automatic fallback from strict to loose encryption
📦 Installation
pip install PinappleClient
🔧 Quick Start
from pinapple_client import PinappleClient
# Initialize client
client = PinappleClient(
user="your_username",
password="your_password",
api_url="https://api.pinapple.com"
)
# Encrypt a single PIN
encrypted_pin = client.encrypt_pin_strict("123456")
print(f"Encrypted: {encrypted_pin}")
# Decrypt data
decrypted_pin = client.decrypt_pin(encrypted_data)
print(f"Decrypted: {decrypted_pin}")
📊 DataFrame Operations
encrypt_dataframe(df, column, strict=True, strict_then_loose=False) -> DataFrame
Encrypts an entire column in a pandas DataFrame.
import pandas as pd
df = pd.DataFrame({
'id': [1, 2, 3],
'pin': ['123456', '789012', '345678']
})
# Encrypt the 'pin' column
encrypted_df = client.encrypt_dataframe(df, 'pin', strict=True)
# Use fallback strategy
encrypted_df = client.encrypt_dataframe(df, 'pin', strict_then_loose=True)
Parameters:
df: Input DataFramecolumn: Column name to encryptstrict: Use strict encryption (default: True)strict_then_loose: Enable fallback strategy (default: False)
🔒 Authentication
The client automatically handles token management:
- Requests a bearer token on first API call
- Caches the token for subsequent requests
- Automatically includes authentication headers
📄 License
This project is licensed under the GPL-3.0 License.
🔗 Links
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 Distribution
pinappleclient-1.1.3.tar.gz
(4.8 kB
view details)
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file pinappleclient-1.1.3.tar.gz.
File metadata
- Download URL: pinappleclient-1.1.3.tar.gz
- Upload date:
- Size: 4.8 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.13.3
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
f4c6045c01a306dc5fd47bec22a762183c332ecc55c01def28a750ee15b23091
|
|
| MD5 |
c49a0d104cdec7457b7117dcf37ad0b7
|
|
| BLAKE2b-256 |
b71e9dedef2bd5d1c206f26b3640a9adb2ecde581fd2e28c15272ca576d97c21
|
File details
Details for the file pinappleclient-1.1.3-py3-none-any.whl.
File metadata
- Download URL: pinappleclient-1.1.3-py3-none-any.whl
- Upload date:
- Size: 5.4 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.13.3
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
91232e6cde8d432c44499a068e812470e8683ed5f6c811a0cce52f3781c055a6
|
|
| MD5 |
38d02fc98cdb4420e799d52c121381cf
|
|
| BLAKE2b-256 |
30ee374db004382477a31e58645f8c839e37a930e57c79fc68fc7749438fd7e7
|