Install & Compatibility
Where this runs
tested against v1.11.0 · pip install
no network on importno background threads
Install × environment matrix
Each cell = how many times install + import succeeded across repeated harness runs. Partial = flaky.
glibc = Debian/Ubuntu slim · musl = Alpine Linux
470MB installed
● package 470MB
Code
Verified usage
Verified import paths — ran on the pinned version, not inferred.
Plato
✓ from plato import Plato
✗ from plato_sdk import Plato
This quickstart initializes the Plato client using an API key retrieved from environment variables. It then attempts to fetch a list of available models from the Plato API, demonstrating a basic interaction. Error handling is included for common issues like missing API keys or network problems.
import os
from plato_sdk import Plato
# Initialize the Plato client with your API key
# Ensure PLATO_API_KEY is set in your environment or pass it directly.
api_key = os.environ.get("PLATO_API_KEY", "")
if not api_key:
print("Warning: PLATO_API_KEY environment variable not set. API calls may fail.")
# In a real app, you might raise an error here.
# For this example, we'll continue with an empty key if not set.
plato = Plato(api_key=api_key)
# Example: Fetch a list of available models
try:
# This call requires a valid API key and network connectivity
models = plato.models.list()
print("Available models:")
for model in models:
print(f"- {model.name} (ID: {model.model_id})")
except Exception as e:
print(f"Error fetching models: {e}")
print("Please check your API key and network connection.")
Debug
Known issues
gotchaAPI key missing or incorrectly configured. The SDK relies on `PLATO_API_KEY` environment variable or direct `api_key` parameter.fixEnsure the `PLATO_API_KEY` environment variable is set to your valid Plato API key, or pass `api_key='your_key_here'` directly when initializing `Plato()`.
affects: All versions
gotchaAPI calls can fail due to network issues, rate limits, or Plato API server errors. Implement robust error handling.fixWrap API calls in `try...except` blocks to catch network exceptions and API-specific errors. Consider implementing retry logic with exponential backoff for transient issues.
affects: All versions
gotchaConflicts with other libraries requiring different Pydantic versions (e.g., Pydantic v1 vs v2). `plato-sdk` requires Pydantic 2.x.fixEnsure your project environment is isolated (e.g., with virtual environments) and other dependencies are compatible with Pydantic 2.x. If conflicts arise, you may need to adjust other library versions or isolate environments.
affects: 1.x.x (due to Pydantic 2.x requirement)
breaking`plato-sdk` requires Python 3.10 or newer. Installing with older Python versions will fail.fixUpgrade your Python interpreter to 3.10 or later. Use tools like `pyenv` or `conda` to manage Python versions effectively.
affects: All 1.x.x versions
Upgrade
Version history
1.11.0latest on PyPI · released May 14, 2026
Audit
Dependencies
httpxrequiredUsed for making HTTP requests to the Plato API.
pydanticrequiredUsed for data validation and serialization of API models (requires Pydantic v2+).
typing-extensionsrequiredProvides backported and experimental typing features.
python-dateutilrequiredProvides extensions to the standard datetime module.