Silo SDK¶
A comprehensive Python SDK for interacting with the Authentic8 Silo platform APIs, providing secure browsing isolation, user management, organization management, file storage, log extraction, and web harvesting capabilities.
Beta Release
This SDK is currently in beta (latest release 0.14.1). APIs and interfaces may change before the 1.0 stable release. Production use is supported, but breaking changes may occur in minor version updates.
Features¶
- Browsing Isolation — Create and manage secure browsing contexts with configurable policies
- User Management — Complete user lifecycle management across organizations
- Organization Management — Organization hierarchy, policies, SSO, and session reporting
- File Storage — Secure file upload, download, search, and management (with async support)
- Log Extraction — Comprehensive audit log retrieval and native decryption of encrypted logs
- Web Harvesting — Automated web content collection with async support for bulk tasks
- Async Operations — Concurrent processing, large file handling, and bulk operations via
aiohttp - Type Safe — Full type hints for better IDE support and static analysis
Installation¶
Access required
The SDK source is distributed under access control. The download and clone commands below resolve only for accounts that have been granted access — if yours has not, they will return "not found" rather than a permission error. Contact your Authentic8 account team to request access. Installation from PyPI is planned and will not require it.
Quick Start¶
from silo_sdk import BrowsingAPI, UserManagementAPI, load_config
# Load configuration (reads config/default.json + .env)
config = load_config("config/default.json")
# Create a secure browsing context
browsing = BrowsingAPI(config)
context_id = browsing.create_context(
url="https://example.com",
username="user@company.com",
policy=[
{"type": "file_transfer", "params": ["block_all"]},
{"type": "clipboard", "params": ["allow_to_local"]},
],
max_uses=1,
)
launch_url = browsing.create_ctx_url(context_id)
print(f"Launch: {launch_url}")
# List users
users = UserManagementAPI(config)
user_list = users.list_users("my_organization")
print(f"Found {len(user_list)} users")
Navigation¶
| Section | Description |
|---|---|
| Getting Started | Installation, configuration, authentication |
| Concepts | Tokens, error handling, async |
| API Reference | Auto-generated docs from source |
| How-To Guides | Step-by-step task guides |
| Examples & Scripts | Runnable demos and operational scripts |
| Advanced | Wire protocol reference |
Support¶
- Issues: GitHub Issues