Python SDK for Uniphore Flow Platform APIs
Project description
Flow Platform SDK
Python SDK for interacting with Uniphore Flow Platform services via async RPC.
Usage
import asyncio
from flow_platform_sdk import platform_api
async def main():
# List data connectors
connectors = await platform_api.list_connectors()
# Execute SQL query
result = await platform_api.execute_query(
connector_id="conn_123",
sql_query="SELECT * FROM customers LIMIT 10",
max_rows=10
)
# Query knowledge base
answer = await platform_api.query_knowledge_base(
knowledge_base_id="kb_123",
query="What is the revenue?"
)
asyncio.run(main())
API Reference
Data Connectors
# List all connectors
await platform_api.list_connectors()
# Get schema
await platform_api.get_schema(connector_id="conn_123")
# Execute query
await platform_api.execute_query(
connector_id="conn_123",
sql_query="SELECT * FROM table",
max_rows=1000
)
# Discover schema
await platform_api.discover_schema(
connector_id="conn_123",
include_sample_data=True,
table_filter="customer*"
)
# Get table info
await platform_api.get_table_info(
connector_id="conn_123",
table_name="customers"
)
# Get sample data
await platform_api.get_sample_data(
connector_id="conn_123",
table_name="customers",
limit=5
)
Knowledge Base
# List knowledge bases
await platform_api.list_knowledge_bases()
# Query knowledge base
await platform_api.query_knowledge_base(
knowledge_base_id="kb_123",
query="What are the main features?"
)
Agent Evaluation
# Invoke agent with draft skill
result = await platform_api.invoke_agent(
agent_spec_id="agent_123",
draft_skill_id="draft_456",
input_message="What is the weather today?",
context={"location": "San Francisco"},
timeout=60
)
Architecture
The SDK uses stdio-based RPC for communication with backend services:
- Requests sent to stdout:
REMOTE_SERVICE_CALL:{...} - Responses read from stdin:
REMOTE_TOOL_RESULT:{...}
Designed for sandboxed execution environments.
Configuration
- Default timeout: 120 seconds per request
- Daemon threads for clean exit on timeout
Development
# Setup
uv sync
# Format code
uvx ruff format .
uvx ruff check .
Project details
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file flow_platform_sdk-2.3.0.tar.gz.
File metadata
- Download URL: flow_platform_sdk-2.3.0.tar.gz
- Upload date:
- Size: 61.6 kB
- Tags: Source
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
fa7664e3940113b7e1528c09d2c445deb1ecd3410c6f8a5ba0cdf7b91a22b8ad
|
|
| MD5 |
a4abb02f010f53332c6d390472d87fb8
|
|
| BLAKE2b-256 |
3fb7d8e7a08eb8c6832f8aa474e7bb740f738b6a2bb7dcfde9f1b9765fca99f9
|
Provenance
The following attestation bundles were made for flow_platform_sdk-2.3.0.tar.gz:
Publisher:
sdk-release.yml on uniphore/flow-agent
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
flow_platform_sdk-2.3.0.tar.gz -
Subject digest:
fa7664e3940113b7e1528c09d2c445deb1ecd3410c6f8a5ba0cdf7b91a22b8ad - Sigstore transparency entry: 1272616820
- Sigstore integration time:
-
Permalink:
uniphore/flow-agent@574353359077a79362286d3353ccfe0abf1b3918 -
Branch / Tag:
refs/heads/main - Owner: https://github.com/uniphore
-
Access:
internal
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
sdk-release.yml@574353359077a79362286d3353ccfe0abf1b3918 -
Trigger Event:
workflow_dispatch
-
Statement type:
File details
Details for the file flow_platform_sdk-2.3.0-py3-none-any.whl.
File metadata
- Download URL: flow_platform_sdk-2.3.0-py3-none-any.whl
- Upload date:
- Size: 9.9 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
257101ff7358251e5345bf34b759943f5e905f88adad04e079331e2309da4e7c
|
|
| MD5 |
a63e5a2e8cd8fb8d1673bc6ba23e5522
|
|
| BLAKE2b-256 |
e37e36dd5e1c6795959fc96760b7873672aa3ef17be5837f8b1cbbec2ce3545d
|
Provenance
The following attestation bundles were made for flow_platform_sdk-2.3.0-py3-none-any.whl:
Publisher:
sdk-release.yml on uniphore/flow-agent
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
flow_platform_sdk-2.3.0-py3-none-any.whl -
Subject digest:
257101ff7358251e5345bf34b759943f5e905f88adad04e079331e2309da4e7c - Sigstore transparency entry: 1272616824
- Sigstore integration time:
-
Permalink:
uniphore/flow-agent@574353359077a79362286d3353ccfe0abf1b3918 -
Branch / Tag:
refs/heads/main - Owner: https://github.com/uniphore
-
Access:
internal
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
sdk-release.yml@574353359077a79362286d3353ccfe0abf1b3918 -
Trigger Event:
workflow_dispatch
-
Statement type: