Unofficial Python SDK for Magalu Cloud
Project description
MGC SDK for Python
An unofficial, open-source Python SDK for interacting with the Magalu Cloud API.
This project aims to provide a Pythonic and developer-friendly interface for Magalu Cloud services, inspired by the official Go SDK while remaining completely independent from Magalu Cloud and its maintainers. The project is community-driven and maintained by contributors.
Disclaimer
This is an unofficial SDK and is not affiliated with, endorsed by, or maintained by Magalu Cloud. For the official SDKs and tools, visit the Magalu Cloud GitHub organization. :contentReference[oaicite:0]{index=0}
Features
- Pythonic API design
- Async support using
httpx - Typed models with Pydantic
- Modular service architecture
- Easy authentication using API Tokens
- Open-source and community-driven
- Designed for automation, scripting, and backend applications
Installation
Using pip
pip install mgc-sdk
Development installation
git clone https://github.com/kayqueGovetri/mgc-sdk-python.git
cd mgc-sdk-python
pip install -e .
Quick Start
from mgc import MgcClient
client = MgcClient(
api_token="YOUR_API_TOKEN"
)
instances = client.compute.instances.list()
for instance in instances:
print(instance.name)
Authentication
The SDK authenticates using a Magalu Cloud API Token.
from mgc import MgcClient
client = MgcClient(
api_token="YOUR_API_TOKEN"
)
For information about generating API tokens, consult the official Magalu Cloud documentation. :contentReference[oaicite:1]{index=1}
Supported Services
Current implementation status:
Compute
- Instances
- Images
- Machine Types
- Snapshots
Block Storage
- Volumes
- Snapshots
- Volume Types
Networking
- VPCs
- Subnets
- Security Groups
- Public IPs
Kubernetes
- Clusters
- Node Pools
Database
- DBaaS Instances
- Replicas
- Snapshots
The roadmap evolves based on community contributions and API availability.
Async Example
import asyncio
from mgc import AsyncMgcClient
async def main():
client = AsyncMgcClient(
api_token="YOUR_API_TOKEN"
)
instances = await client.compute.instances.list()
print(instances)
asyncio.run(main())
Project Structure
mgc-sdk-python/
├── mgc/
│ ├── client/
│ ├── compute/
│ ├── networking/
│ ├── models/
│ ├── exceptions/
│ └── utils/
├── tests/
├── examples/
└── docs/
Why This Project?
While Magalu Cloud provides official tooling and SDKs, Python developers may prefer a native Python experience for:
- Automation
- Infrastructure management
- Data engineering
- Backend services
- Serverless applications
- Scripts and CLI tools
This project seeks to fill that gap with a modern Python SDK.
Contributing
Contributions are welcome.
You can contribute by:
- Reporting bugs
- Suggesting new features
- Improving documentation
- Adding support for new services
- Writing tests
Running tests
pytest
Linting
ruff check .
Formatting
ruff format .
Roadmap
- Full Compute API coverage
- Networking support
- Kubernetes support
- DBaaS support
- Object Storage support
- CLI integration
- Complete documentation
- Automated releases
Related Projects
- Official Magalu Cloud Go SDK :contentReference[oaicite:2]{index=2}
- Official Magalu Cloud Organization :contentReference[oaicite:3]{index=3}
License
This project is licensed under the MIT License.
See the LICENSE file for details.
Built and maintained by the open-source community.
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 mgc_sdk_python-0.0.1.tar.gz.
File metadata
- Download URL: mgc_sdk_python-0.0.1.tar.gz
- Upload date:
- Size: 7.1 kB
- Tags: Source
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
888430ee1caa04656320d364971ca205f494195fa825eccab5ce213b57a3f51f
|
|
| MD5 |
9024d0ddf0f85ee7646172be9fb04f50
|
|
| BLAKE2b-256 |
f69ed6e3f9a911b32786a37b2b64e7819669fd53cf9a68f7c8f3d6249f7cac18
|
Provenance
The following attestation bundles were made for mgc_sdk_python-0.0.1.tar.gz:
Publisher:
publish.yml on kayqueGovetri/mgc-sdk-python
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
mgc_sdk_python-0.0.1.tar.gz -
Subject digest:
888430ee1caa04656320d364971ca205f494195fa825eccab5ce213b57a3f51f - Sigstore transparency entry: 1713407057
- Sigstore integration time:
-
Permalink:
kayqueGovetri/mgc-sdk-python@101d1a438e1a9a0f0026be5f9e10dad750e5fe3a -
Branch / Tag:
refs/tags/v0.0.1 - Owner: https://github.com/kayqueGovetri
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
publish.yml@101d1a438e1a9a0f0026be5f9e10dad750e5fe3a -
Trigger Event:
release
-
Statement type:
File details
Details for the file mgc_sdk_python-0.0.1-py3-none-any.whl.
File metadata
- Download URL: mgc_sdk_python-0.0.1-py3-none-any.whl
- Upload date:
- Size: 7.2 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
390a461713335c80a777d250b8e5572a715494d1c807824a5aae6455033b6a83
|
|
| MD5 |
08633ee55c7b5461b3132befc342d3eb
|
|
| BLAKE2b-256 |
43f5eb48388583af8fab8117541d29f1f7e0ed736472568b7a9fb1573e262104
|
Provenance
The following attestation bundles were made for mgc_sdk_python-0.0.1-py3-none-any.whl:
Publisher:
publish.yml on kayqueGovetri/mgc-sdk-python
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
mgc_sdk_python-0.0.1-py3-none-any.whl -
Subject digest:
390a461713335c80a777d250b8e5572a715494d1c807824a5aae6455033b6a83 - Sigstore transparency entry: 1713407214
- Sigstore integration time:
-
Permalink:
kayqueGovetri/mgc-sdk-python@101d1a438e1a9a0f0026be5f9e10dad750e5fe3a -
Branch / Tag:
refs/tags/v0.0.1 - Owner: https://github.com/kayqueGovetri
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
publish.yml@101d1a438e1a9a0f0026be5f9e10dad750e5fe3a -
Trigger Event:
release
-
Statement type: