Skip to main content

Asynchronous Python client for CCEE (Brazilian Electric Energy Commercialization Chamber) API

Project description

Voltarium

CI Python 3.13+ License

Modern, asynchronous Python client for the CCEE (Brazilian Electric Energy Commercialization Chamber) API. Built with Python 3.13+ and designed for high-performance energy sector applications.

🚀 Key Features

  • 🔥 Asynchronous: Built with httpx and asyncio for maximum performance
  • 🔒 Type Safe: Complete type hints with Pydantic models for bulletproof code
  • 🛡️ Robust: Automatic OAuth2 token management with intelligent retry logic
  • 🏗️ Real Staging Data: 60+ authentic CCEE credentials for comprehensive testing
  • ⚡ Modern: Python 3.13+ with UV for lightning-fast dependency management
  • ✅ Production Ready: Comprehensive test suite and error handling

📦 Installation

# Using UV (recommended)
uv add voltarium

# Using pip
pip install voltarium

🔥 Quick Start

import asyncio
from voltarium import VoltariumClient

async def main():
    async with VoltariumClient(
        base_url="https://api.ccee.org.br",
        client_id="your_client_id",
        client_secret="your_client_secret"
    ) as client:
        # List retailer migrations with automatic pagination
        migrations = client.list_migrations(
            initial_reference_month="2024-01",
            final_reference_month="2024-12",
            agent_code="12345",
            profile_code="67890"
        )

        # Stream results efficiently
        async for migration in migrations:
            print(f"Migration {migration.migration_id}: {migration.migration_status}")

asyncio.run(main())

🏗️ Real Staging Environment

Test with real CCEE data using our comprehensive staging environment:

from voltarium.sandbox import RETAILERS, UTILITIES

# Use real staging credentials
retailer = RETAILERS[0]  # 30+ available retailers
utility = UTILITIES[0]   # 30+ available utilities

# Test with actual CCEE staging API
async with VoltariumClient(
    base_url="https://staging.ccee.org.br",
    client_id=retailer.client_id,
    client_secret=retailer.client_secret
) as client:
    # All operations work with real data
    migrations = await client.list_migrations(...)

📚 Comprehensive Documentation

Visit our complete documentation for:

🛠️ Development

# Clone and setup
git clone https://github.com/joaodaher/voltarium-python.git
cd voltarium-python

# Install dependencies (requires UV)
task install-dev

# Run tests
task test

# Quality checks
task lint && task format && task mypy

🎯 Current Status

Alpha Release - Core migration endpoints fully supported:

Retailer Migrations - Complete CRUD operations 🚧 Utility Migrations - Under development 📋 Additional Endpoints - See roadmap

🤝 Contributing

We welcome contributions! Please see our documentation for details on:

  • Feature roadmap and priorities
  • Development setup and guidelines
  • Testing with real staging data

📄 License

Apache License 2.0 - see LICENSE.md for details.


Built for the Brazilian energy sector 🇧🇷 | Powered by modern Python 🐍

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

voltarium-0.1.0.tar.gz (17.5 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

voltarium-0.1.0-py3-none-any.whl (20.7 kB view details)

Uploaded Python 3

File details

Details for the file voltarium-0.1.0.tar.gz.

File metadata

  • Download URL: voltarium-0.1.0.tar.gz
  • Upload date:
  • Size: 17.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: uv/0.7.19

File hashes

Hashes for voltarium-0.1.0.tar.gz
Algorithm Hash digest
SHA256 0384c084ab38b67ec483b9df5cd3a9c0d3e4a5a2b0225f9f76b1c841c9b8b19b
MD5 243ed375df74c6b14bbfc87482b4b87c
BLAKE2b-256 9e9720131acb3010552bdfef8ec4ab76791553a8979a80dfb2dea61fc2b2a378

See more details on using hashes here.

File details

Details for the file voltarium-0.1.0-py3-none-any.whl.

File metadata

  • Download URL: voltarium-0.1.0-py3-none-any.whl
  • Upload date:
  • Size: 20.7 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: uv/0.7.19

File hashes

Hashes for voltarium-0.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 df6f7855b8f172e2e16d1790bb959a3fab44f59f380a75fd1ce17cf88dec454a
MD5 d5eade2b48f64da978a16e2159b64676
BLAKE2b-256 82c880c7ed6ee97f12224e45cd62e0b8434b670dc2bfb7d758eeaa530cfb037a

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page