Python API implements streaming interfaces (#577)

* Tech spec

* Python CLI utilities updated to use the API including streaming features

* Added type safety to Python API

* Completed missing auth token support in CLI
This commit is contained in:
cybermaggedon 2025-12-04 17:38:57 +00:00 committed by GitHub
parent b957004db9
commit 01aeede78b
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
53 changed files with 4489 additions and 715 deletions

View file

@ -9,13 +9,14 @@ from trustgraph.api import Api, ConfigKey
import json
default_url = os.getenv("TRUSTGRAPH_URL", 'http://localhost:8088/')
default_token = os.getenv("TRUSTGRAPH_TOKEN", None)
default_user = "trustgraph"
def start_processing(
url, user, document_id, id, flow, collection, tags
url, user, document_id, id, flow, collection, tags, token=None
):
api = Api(url).library()
api = Api(url, token=token).library()
if tags:
tags = tags.split(",")
@ -44,6 +45,12 @@ def main():
help=f'API URL (default: {default_url})',
)
parser.add_argument(
'-t', '--token',
default=default_token,
help='Authentication token (default: $TRUSTGRAPH_TOKEN)',
)
parser.add_argument(
'-U', '--user',
default=default_user,
@ -90,7 +97,8 @@ def main():
id = args.id,
flow = args.flow_id,
collection = args.collection,
tags = args.tags
tags = args.tags,
token = args.token,
)
except Exception as e: