Metadata-Version: 2.5
Name: segmentstream-connections-runtime
Version: 0.1.0a1
Summary: Private OAuth connection runtime for SegmentStream workspaces
Project-URL: Homepage, https://segmentstream.com
Author: SegmentStream
License-Expression: Apache-2.0
License-File: LICENSE
License-File: NOTICE
Classifier: Development Status :: 3 - Alpha
Classifier: Intended Audience :: Developers
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.12
Classifier: Programming Language :: Python :: 3.13
Classifier: Typing :: Typed
Requires-Python: <3.14,>=3.12
Requires-Dist: fastapi<1,>=0.117
Requires-Dist: pydantic<3,>=2.10
Requires-Dist: segmentstream-pipeline==0.1.0a7
Requires-Dist: uvicorn<1,>=0.35
Description-Content-Type: text/markdown

# SegmentStream connections runtime

`segmentstream-connections-runtime` is the private Cloud Run host for custom
OAuth 2.0 definitions authored with the SegmentStream SDK. It loads the
workspace's `connections/definitions.py`, resolves customer-owned secret
references, and performs authorization-code and refresh-token exchanges.

The runtime is an infrastructure component, not a public user-facing API. Its
Cloud Run service must require IAM authentication.

```shell
python -m segmentstream_connections_runtime inspect manifest.json
python -m segmentstream_connections_runtime serve
```

The server listens on `PORT`, defaulting to `8080`. A declaration such as
`secret_ref("google-oauth-client-id")` is resolved from
`SEGMENTSTREAM_CONNECTION_SECRET_GOOGLE_OAUTH_CLIENT_ID` in the isolated runtime
environment. Client secrets use the same mapping convention.

## Releases

Releases use the version in `pyproject.toml` and are published from the
`connections-runtime-v<version>` Git tag by the protected
`connections-runtime-release.yml` workflow. PyPI releases are immutable, so the
package version must be incremented before creating another release tag.
