A simple API client for code execution
Project description
InstaVM Client
A Python client library for interacting with a simple API.
Installation
You can install the package using pip:
pip install instavm
Usage
Basic Usage
from instavm import InstaVM, ExecutionError, NetworkError
# Create client with automatic session management
client = InstaVM(api_key='your_api_key')
try:
# Execute a command
result = client.execute("print(100**100)")
print(result)
# Get usage info for the session
usage = client.get_usage()
print(usage)
except ExecutionError as e:
print(f"Code execution failed: {e}")
except NetworkError as e:
print(f"Network issue: {e}")
finally:
client.close_session()
Context Manager (Recommended)
from instavm import InstaVM
# Automatic session cleanup
with InstaVM(api_key='your_api_key') as client:
result = client.execute("print('Hello from InstaVM!')")
print(result)
# Session automatically closed
Streaming Execution
from instavm import InstaVM
with InstaVM(api_key='your_api_key') as client:
# Real-time output streaming
for output in client.execute_streaming("pip install matplotlib && python -c 'import matplotlib; print(\"Success!\")'"):
print(f"Output: {output}")
Error Handling
from instavm import InstaVM, AuthenticationError, RateLimitError, SessionError
try:
client = InstaVM(api_key='invalid_key')
except AuthenticationError:
print("Invalid API key")
except RateLimitError:
print("Rate limit exceeded - try again later")
except SessionError as e:
print(f"Session error: {e}")
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
instavm-0.3.0.tar.gz
(10.4 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 instavm-0.3.0.tar.gz.
File metadata
- Download URL: instavm-0.3.0.tar.gz
- Upload date:
- Size: 10.4 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.13.5
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
f7ecb836e09def080e15fe2d7e2fa04a553332348bfb7e5df9c38f907f64a681
|
|
| MD5 |
170822f2f3aaecb1360bc14dc6d7d32c
|
|
| BLAKE2b-256 |
3565ce1e529cd89c256c5b10de726c09d78bfeefae022a08da606940184b801e
|
File details
Details for the file instavm-0.3.0-py3-none-any.whl.
File metadata
- Download URL: instavm-0.3.0-py3-none-any.whl
- Upload date:
- Size: 7.1 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.13.5
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
711efd737fa8664b048b89d1cf9fe7f373205749826c371e1234e6a3412199bc
|
|
| MD5 |
03ef8578aff50dc49740926fc27b8ef2
|
|
| BLAKE2b-256 |
537d8c7093774f02f1046187046a0d11cafc90b414dfeade5dab2cf1d962affd
|