Getting started
Install the STS client and identify the credentials your application is using.
Install from source
rboto packages are not published on PyPI yet. Use a checkout with CPython 3.12–3.15, Rust 1.94.1 or newer, and native build tools (a C compiler and CMake).
git clone https://github.com/ferrumio/rboto.git
cd rboto
python3 -m venv .venv
source .venv/bin/activate
python -m pip install ./packages/rboto ./packages/rboto-sts
This builds STS only. Add services by installing their directories:
Use packages from the same checkout. Each service requires the matching facade
version. Installing rboto alone does not install a service client.
Package names and wheel targets
Services are packaged as rboto-<service>. The facade defines extras such as
rboto[s3,dynamodb] for installing matching versions once packages are published.
The release configuration targets these CPython wheels:
| Operating system | Architecture | Python |
|---|---|---|
| Linux with glibc | x86_64, aarch64 | 3.12, 3.13, 3.14, 3.15 |
| Linux with musl 1.2+ (including Alpine) | x86_64, aarch64 | 3.12, 3.13, 3.14, 3.15 |
| macOS | x86_64, arm64 | 3.12, 3.13, 3.14, 3.15 |
Windows, PyPy, and free-threaded CPython are not in the current wheel matrix. Wheels target individual Python versions.
Select credentials
For an existing named profile:
For SSO, establish the login session first:
Applications using instance or container roles can use the credentials supplied by the environment. See Configuration for other sources.
Make a request
Save this as identity.py:
import asyncio
from rboto import STSClient
async def main() -> None:
client = STSClient(region="us-east-1")
response = await client.get_caller_identity()
print(response.account)
print(response.arn)
if __name__ == "__main__":
asyncio.run(main())
Run python identity.py in the environment where you installed the client.
The output contains the account ID and principal ARN returned by STS.
Client construction is synchronous and performs no network request. The operation
runs when awaited. If Python cannot import rboto_sts, install that service in the
same environment. See Errors for authentication and service failures.
Choose your next client from the catalog.