Skip to main content

Runsite

Runsite Python SDK

Use Runsite services from your Python code — transactional email, object storage, configuration and secrets, with end-user auth coming soon.

runsite.app · Documentation · API Reference · Runsite CLI

Status Python 3.10+ Typed Sync and async MIT


What is the Runsite Python SDK?

runsite is a typed Python library that your application imports to use Runsite services at runtime, the same way boto3 is used for AWS. When your code runs on Runsite, the clients configure themselves from environment variables the platform sets for your service, so there is nothing to wire up.

Features

Module What it does Status
runsite.email Send transactional email, check delivery status, verify delivery webhooks 🚧 in progress
runsite.storage S3-compatible object storage: buckets, files, access keys 🚧 in progress
runsite.secrets Typed reads of configuration and secrets, manage service variables 🚧 in progress
runsite.auth End-user authentication for your apps 🔜 coming soon

Every client comes in a sync and an async flavour, raises typed errors and retries transient failures.

Install

pip install runsite-sdk              # email + secrets
pip install "runsite-sdk[storage]"   # + object storage (boto3)

or with uv:

uv add runsite-sdk
uv add "runsite-sdk[storage]"

Requires Python 3.10+. The package is installed as runsite-sdk and imported as runsite.

Quick start

import runsite

# Email
runsite.email.send(
    to="user@example.com",
    subject="Welcome aboard",
    html="<p>Thanks for signing up!</p>",
)

# Secrets and configuration
database_url = runsite.secrets.get("DATABASE_URL")

# Object storage
bucket = runsite.storage.bucket()
bucket.upload("avatars/42.png", image_bytes)

Module-level shortcuts use a default client built from the environment. For tests, multiple accounts or async code, create clients explicitly:

from runsite import AsyncEmail

email = AsyncEmail(api_key="...")
await email.send(to="user@example.com", subject="Hi", text="Hello!")

Configuration

Variable Used by Set by
EMAIL_API_KEY, EMAIL_API_URL email the platform, when an email service is connected
S3_ACCESS_KEY_ID, S3_SECRET_ACCESS_KEY, S3_ENDPOINT_URL, S3_BUCKET, S3_REGION storage the platform, when a bucket is connected
RUNSITE_API_KEY managing secrets and buckets you (ak_live_... from the dashboard)

Roadmap

  • Email: send, status, webhook verification
  • Secrets: typed reads, set and delete service variables
  • Storage: buckets, objects, access keys
  • First release on PyPI
  • Auth: end-user authentication

License

MIT — see LICENSE.

Metadata

Release files for runsite-sdk 0.0.1

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for runsite-sdk 0.0.1
File Size Uploaded Provenance
runsite_sdk-0.0.1.tar.gz 4.1 kB Without provenance Details

Built distribution (wheel)

Table of built distributions (wheels) for runsite-sdk 0.0.1
File Interpreter ABI Platform
runsite_sdk-0.0.1-py3-none-any.whl Python 3 none any Details

Total release size: 8.8 kB

Release files / runsite_sdk-0.0.1.tar.gz

Download URL runsite_sdk-0.0.1.tar.gz
Size 4.1 kB
Tags Source
SHA-256 checksum
How to use checksums
cd2b05fcb587d458a014ea67d9dfe9b3eb68316bfe9e83192cce6b82df3c46ba
BLAKE2b-256 checksum
How to use checksums
1629bdd70b5d730a63adce1dbc5c579bf892b16da3f132e81b16d1a784293b8f
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via uv/0.13.5 {"installer":{"name":"uv","version":"0.13.5","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}

Release files / runsite_sdk-0.0.1-py3-none-any.whl

Download URL runsite_sdk-0.0.1-py3-none-any.whl
Size 4.7 kB
Tags Python 3
SHA-256 checksum
How to use checksums
6ec02fe8add2b51f00b9405225a092b826e810c8c1bad03bc846cc5500ecd867
BLAKE2b-256 checksum
How to use checksums
8a791fb014ea601da6e9d378b137adcf69c75907a549975ec5b1e354ba85b6f9
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via uv/0.13.5 {"installer":{"name":"uv","version":"0.13.5","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}

Security for runsite-sdk 0.0.1

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

No provenance found

None of the files in this release were uploaded with provenance metadata.

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

To learn more about protecting yourself from malicious actors, visit our package security documentation.

Release history Release notifications | RSS feed

This release

0.0.1 This release

2 release files No provenance

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page