livepeer-frameworks
Typed Python client for the FrameWorks GraphQL API. It ships a sync and an async client generated from FrameWorks' curated public operations, with pydantic models, retries, pagination, typed errors, a VOD upload helper, playback token signing, and webhook verification.
pip install livepeer-frameworks
from livepeer_frameworks import FrameWorksClient, expect_result, paginate_relay
from livepeer_frameworks.graphql import ConnectionInput, CreateStreamCreateStreamStream, CreateStreamInput
with FrameWorksClient("https://bridge.example.com/graphql", token="YOUR_API_TOKEN") as fw:
created = fw.create_stream(input=CreateStreamInput(name="Studio A"))
# Returns the Stream member or raises ResultError for ValidationError/AuthError.
stream = expect_result(created.create_stream, CreateStreamCreateStreamStream)
print(stream.stream_key, stream.playback_id)
for s in paginate_relay(
lambda page: fw.list_streams(page=ConnectionInput.model_validate(page)).streams_connection
):
print(s.name)
The client reads no environment variables; pass the URL and token explicitly. Per-call options are
keyword arguments of the generated methods: idempotency_key= (sent as Idempotency-Key; paid
mutations settled with x402 need one) and playback_token= (sent as X-Frameworks-Playback-JWT).
Queries are retried on network errors and HTTP 408, 429, and 5xx. A mutation is retried only when the request provably never reached the server: the connection could not be established, or the gateway answered 429. It is never sent again after a timeout, a dropped connection, or a 5xx, because the gateway does not deduplicate replayed mutations.
Versions
The TypeScript, Go, and Python SDKs share one version. Until FrameWorks 1.0 the SDKs stay at 0.x,
and each minor line supports the FrameWorks releases listed for it; this line needs FrameWorks
v0.3.11 or later. Against an older stable release the client raises ServerTooOldError before
sending a call.
Documentation: https://logbook.frameworks.network/builders/sdks
Release files for livepeer-frameworks 0.1.0
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| livepeer_frameworks-0.1.0.tar.gz | 76.9 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| livepeer_frameworks-0.1.0-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 184.4 kB
Release files / livepeer_frameworks-0.1.0.tar.gz
| Download URL | livepeer_frameworks-0.1.0.tar.gz |
|---|---|
| Size | 76.9 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
380e499c1aaf2bbd4056a14f5ed0e0359f6bef7b3ff5c5f0b5983216a1976808
|
|
BLAKE2b-256 checksum How to use checksums |
fd86130867033c51edc2440b4ab3295c1e49129008403181fc095385ad5c0329
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/7.0.0 CPython/3.14.7
|
Release files / livepeer_frameworks-0.1.0-py3-none-any.whl
| Download URL | livepeer_frameworks-0.1.0-py3-none-any.whl |
|---|---|
| Size | 107.6 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
b2e45b2637f9e6de73b6098183b6a47231bb5aba2be55fe63ae00cbebe80b490
|
|
BLAKE2b-256 checksum How to use checksums |
23c7e976e3156b2ea9d8ee381f8f436d90828072290193649279707c0b26f066
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/7.0.0 CPython/3.14.7
|