Periplus Python SDK
Read-only access to the public ClickHouse corpus through the Periplus HTTP API. Install the SDK from the same checkout as your deployment:
python -m pip install ./packages/periplus-python-sdk
from periplus_sdk import Client
with Client("http://localhost:8080") as client:
result = client.execute(
"SELECT capture_id, url FROM public_v1.captures LIMIT ?", [10]
)
print(result.columns, result.rows)
Use PERIPLUS_PUBLIC_URL to omit the URL argument. No database credentials or
service token are needed for the public gateway. AsyncClient provides async
methods. prepare validates/explains SQL; execute returns typed columns, rows,
truncation and query metadata; helpers describes the installed public views.
The public schema is public_v1. HTML joins use document_id plus node index;
document_id identifies retained bytes and their HTML interpretation. Raw-byte hashes stay internal.
There is one query endpoint, with no experimental fallback. Client errors preserve
server categories and do not automatically retry executed queries.
For notebook/SQLAlchemy integration:
from periplus_sdk import sql_api
from sqlalchemy import text
engine = sql_api.create_engine(base_url="http://localhost:8080")
with engine.connect() as connection:
print(connection.execute(text("SELECT url FROM public_v1.captures LIMIT 5")).all())
engine.dispose()
Marimo discovers the five public views through the helper catalogue. Column
reflection uses SELECT * ... LIMIT 0 to retrieve native types without reading
corpus rows; no SHOW, DESCRIBE, or system-table access is required.
The DB-API connection advertises the ClickHouse dialect and converts native
nullable integer, decimal, date and datetime types. Nested types retain JSON wire
values. It is read-only: there are no client transactions or writable sessions.
Streaming cursors expose incomplete/truncated results explicitly; configure
allow_partial only when partial results suit the application.
See the public schema and query boundary.
Release files for periplus-python-sdk 0.8.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 | |
|---|---|---|---|
| periplus_python_sdk-0.8.0.tar.gz | 21.6 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| periplus_python_sdk-0.8.0-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 40.9 kB
Release files / periplus_python_sdk-0.8.0.tar.gz
| Download URL | periplus_python_sdk-0.8.0.tar.gz |
|---|---|
| Size | 21.6 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
1d75e796757ea45e2be04788d6e1719b17dc52456026ace753a71e74e1cdf8c9
|
|
BLAKE2b-256 checksum How to use checksums |
3111dfe0872d8d2351ae427a73184e3268cb1e1333ec9093e71079fdadd77c89
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.14
|
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.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Sep 16, 2026.
Transparency logRelease files / periplus_python_sdk-0.8.0-py3-none-any.whl
| Download URL | periplus_python_sdk-0.8.0-py3-none-any.whl |
|---|---|
| Size | 19.3 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
df9d2e975088350e446c59376b3a73bbab2c51c50a90260d81054ec7304e9e60
|
|
BLAKE2b-256 checksum How to use checksums |
7debddd4263c5c4284998269c9897eadddca826f6fddf81da1a4b2a78c850868
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.14
|
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.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Sep 16, 2026.
Transparency log