Official Python SDK for the BriskSec Toolbox Data API
Project description
Brisksec toolbox data api sdk
Official Python SDK for the BriskSec Toolbox Data API
Official Python SDK for the BriskSec Toolbox Data API
🚀 Quick Start
Installation
pip install brisksec_toolbox_data_api_sdk
Basic Usage
import asyncio
from brisksec_toolbox_data_api_sdk.client import Client
from brisksec_toolbox_data_api_sdk.api.organizations import list_organizations
async def main():
# Create client
client = Client(base_url="")
# List organizations
response = await list_organizations.asyncio(
client=client,
page=1,
size=10
)
print(f"Found {response.total} organizations")
for org in response.items:
print(f"- {org.name}: {org.description}")
# Run the example
asyncio.run(main())
📚 Documentation
API Client
The SDK provides both synchronous and asynchronous clients:
from brisksec_toolbox_data_api_sdk.client import Client, AuthenticatedClient
# Basic client
client = Client(base_url="")
# Authenticated client (if API requires authentication)
auth_client = AuthenticatedClient(
base_url="",
token="your-api-token"
)
Available Endpoints
- Organizations:
brisksec_toolbox_data_api_sdk.api.organizations- Organization management - Domains:
brisksec_toolbox_data_api_sdk.api.domains- Domain management - IP Addresses:
brisksec_toolbox_data_api_sdk.api.ip_addresses- IP address management - Services:
brisksec_toolbox_data_api_sdk.api.services- Service management - Relationships:
brisksec_toolbox_data_api_sdk.api.relationships- Relationship management between assets
🔧 Usage Patterns
Async Usage (Recommended)
import asyncio
from brisksec_toolbox_data_api_sdk.client import Client
from brisksec_toolbox_data_api_sdk.api.organizations import create_organization, get_organization
from brisksec_toolbox_data_api_sdk.models.organization_create import OrganizationCreate
async def example_operations():
client = Client(base_url="")
# Create organization
org_data = OrganizationCreate(
name="Example Corp",
description="Example organization"
)
new_org = await create_organization.asyncio(
client=client,
body=org_data
)
# Get organization
org = await get_organization.asyncio(
client=client,
entity_id=new_org.id
)
return org
asyncio.run(example_operations())
Sync Usage
from brisksec_toolbox_data_api_sdk.client import Client
from brisksec_toolbox_data_api_sdk.api.organizations import list_organizations
def get_organizations():
client = Client(base_url="")
response = list_organizations.sync(
client=client,
page=1,
size=50
)
return response.items
organizations = get_organizations()
Error Handling
import asyncio
from brisksec_toolbox_data_api_sdk.client import Client
from brisksec_toolbox_data_api_sdk.api.organizations import get_organization
from brisksec_toolbox_data_api_sdk import errors
async def safe_get_organization(org_id: str):
client = Client(base_url="")
try:
response = await get_organization.asyncio(
client=client,
entity_id=org_id
)
return response
except errors.UnexpectedStatus as e:
print(f"API returned unexpected status: {e.status_code}")
return None
except Exception as e:
print(f"Request failed: {e}")
return None
Pagination
async def get_all_organizations():
client = Client(base_url="")
all_orgs = []
page = 1
while True:
response = await list_organizations.asyncio(
client=client,
page=page,
size=100
)
all_orgs.extend(response.items)
if len(response.items) < 100: # Last page
break
page += 1
return all_orgs
⚙️ Configuration
Environment Variables
# API Base URL
export BRISKSEC_TOOLBOX_DATA_API_SDK_BASE_URL=""
# API Token (if authentication required)
export BRISKSEC_TOOLBOX_DATA_API_SDK_API_TOKEN="your-api-token"
# Request timeout (seconds)
export BRISKSEC_TOOLBOX_DATA_API_SDK_TIMEOUT="30"
Client Configuration
import httpx
from brisksec_toolbox_data_api_sdk.client import Client
# Custom timeout
client = Client(
base_url="",
timeout=httpx.Timeout(60.0)
)
# Custom headers
client = Client(base_url="")
client.headers.update({
"X-Custom-Header": "value",
"User-Agent": "MyApp/1.0"
})
# SSL verification (development only)
client = Client(
base_url="",
verify_ssl=False
)
✨ Features
- ✅ Auto-generated from OpenAPI specification
- ✅ Full async/await support with
.asyncio()methods - ✅ Synchronous support with
.sync()methods - ✅ Comprehensive type hints for better IDE support
- ✅ Automatic request/response serialization
- ✅ Built-in error handling and validation
- ✅ All API endpoints covered
- ✅ Pagination support
- ✅ Custom client configuration
📦 Requirements
- Python 3.9+
- httpx >= 0.20.0
- attrs >= 22.2.0
- python-dateutil >= 2.8.0
📖 Examples
Check the examples/ directory for complete usage examples:
basic_usage.py- Basic async/await usagesync_usage.py- Synchronous usage patternsasync_usage.py- Advanced async patterns
Available Models
All request/response models are available in the brisksec_toolbox_data_api_sdk.models module:
from brisksec_toolbox_data_api_sdk.models import (
OrganizationCreate,
OrganizationUpdate,
OrganizationResponse,
DomainCreate,
RelationshipCreate,
# ... and more
)
🏗️ SDK Generation
This SDK is automatically generated from the BriskSec Toolbox Data API OpenAPI specification.
Latest Generation
- Generated: {{ generation_timestamp or "Latest" }}
- API Version: {{ api_version or version }}
- SDK Version: 1.0.0
Updates
The SDK is automatically updated when the API changes. Check the releases page for the latest version.
🤝 Contributing
This SDK is auto-generated. To suggest improvements:
- API Changes: Submit issues to the main API repository
- SDK Generation: Contribute to the SDK generation tools
- Documentation: Help improve templates and examples
See CONTRIBUTING.md for detailed guidelines.
📄 License
This SDK is licensed under the MIT License. See LICENSE for details.
🔗 Links
- API Documentation: /docs
- OpenAPI Spec: /openapi.json
- PyPI Package: https://pypi.org/project/brisksec_toolbox_data_api_sdk/
- Source Repository: https://github.com/brisksec/brisksec-toolbox-data-api-sdk
- Issue Tracker: https://github.com/brisksec/brisksec-toolbox-data-api-sdk/issues
- Documentation: https://brisksec.github.io/brisksec-toolbox-data-api-sdk
🆘 Support
- API Documentation: /docs
- GitHub Issues: https://github.com/brisksec/brisksec-toolbox-data-api-sdk/issues
- Discussions: https://github.com/brisksec/brisksec-toolbox-data-api-sdk/discussions
Generated with ❤️ by the BriskSec Toolbox Data API SDK Generator
Last updated: {{ generation_date or "Latest build" }}
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
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 brisksec_toolbox_data_api_sdk-1.2025.610.1108.tar.gz.
File metadata
- Download URL: brisksec_toolbox_data_api_sdk-1.2025.610.1108.tar.gz
- Upload date:
- Size: 101.1 kB
- Tags: Source
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.12.9
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
f53cba862db514597ca0c834332e5a9c6cf4015c7a4a789c9b302250efaf82e1
|
|
| MD5 |
167a941c274b7ad6dbd605bdc7cb9bf4
|
|
| BLAKE2b-256 |
aa5e96d9783eaf937914fccf7c9ae05e1fe5f59ca13a65b8a526f782cfe71299
|
Provenance
The following attestation bundles were made for brisksec_toolbox_data_api_sdk-1.2025.610.1108.tar.gz:
Publisher:
publish.yml on BriskStack/brisksec-toolbox-data-api-sdk
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
brisksec_toolbox_data_api_sdk-1.2025.610.1108.tar.gz -
Subject digest:
f53cba862db514597ca0c834332e5a9c6cf4015c7a4a789c9b302250efaf82e1 - Sigstore transparency entry: 233968893
- Sigstore integration time:
-
Permalink:
BriskStack/brisksec-toolbox-data-api-sdk@b6b2d2af4996de8ed0c283cd2fabe07e1c4aed6b -
Branch / Tag:
refs/tags/v1.2025.0610.1108 - Owner: https://github.com/BriskStack
-
Access:
private
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
publish.yml@b6b2d2af4996de8ed0c283cd2fabe07e1c4aed6b -
Trigger Event:
push
-
Statement type:
File details
Details for the file brisksec_toolbox_data_api_sdk-1.2025.610.1108-py3-none-any.whl.
File metadata
- Download URL: brisksec_toolbox_data_api_sdk-1.2025.610.1108-py3-none-any.whl
- Upload date:
- Size: 206.7 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.12.9
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
b2bb3d683ebafd61f1bffc99c7918bc583355b774b8da3ce78cb0d052e513a4b
|
|
| MD5 |
84e13f40203b7372471a792c407456ea
|
|
| BLAKE2b-256 |
0056224b3d2c8372627b541bada74b7fbaaa36f4ad48e54d1df75c73570081f3
|
Provenance
The following attestation bundles were made for brisksec_toolbox_data_api_sdk-1.2025.610.1108-py3-none-any.whl:
Publisher:
publish.yml on BriskStack/brisksec-toolbox-data-api-sdk
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
brisksec_toolbox_data_api_sdk-1.2025.610.1108-py3-none-any.whl -
Subject digest:
b2bb3d683ebafd61f1bffc99c7918bc583355b774b8da3ce78cb0d052e513a4b - Sigstore transparency entry: 233968898
- Sigstore integration time:
-
Permalink:
BriskStack/brisksec-toolbox-data-api-sdk@b6b2d2af4996de8ed0c283cd2fabe07e1c4aed6b -
Branch / Tag:
refs/tags/v1.2025.0610.1108 - Owner: https://github.com/BriskStack
-
Access:
private
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
publish.yml@b6b2d2af4996de8ed0c283cd2fabe07e1c4aed6b -
Trigger Event:
push
-
Statement type: