TrustGraph API
AI data trust layer for enterprise data platforms. Connects to Snowflake and Databricks, registers data sources, stores metadata in PostgreSQL, and exposes a FastAPI backend.
Quick Start
cd trustgraph-api
python -m venv .venv
source .venv/bin/activate
pip install -r requirements.txt
docker compose up -d postgres
cp .env.example .env
uvicorn app.main:app --reload
Open http://localhost:8000/docs for Swagger UI.
Endpoints
| Method | Path | Description |
|---|---|---|
| GET | /health | Health check |
| POST | /auth/register | Register new user |
| POST | /auth/login | Login, get JWT |
| GET | /auth/me | Current user info |
| POST | /sources | Create data source |
| GET | /sources | List all sources |
| GET | /sources/{id} | Get source by ID |
| DELETE | /sources/{id} | Delete source |
| POST | /sources/snowflake/test | Test Snowflake connection |
| POST | /sources/databricks/test | Test Databricks connection |
Running Tests
python -m pytest tests/ -v
Docker
docker compose up --build
Project Structure
trustgraph-api/
├── app/
│ ├── api/ # Route handlers
│ │ ├── auth.py
│ │ ├── health.py
│ │ ├── source_tests.py
│ │ └── sources.py
│ ├── auth/ # JWT and security
│ │ ├── dependencies.py
│ │ └── security.py
│ ├── connectors/ # DB connectors
│ │ ├── databricks_connector.py
│ │ └── snowflake_connector.py
│ ├── db/ # Database engine/session
│ │ ├── base.py
│ │ ├── engine.py
│ │ └── session.py
│ ├── models/ # ORM models
│ │ ├── data_source.py
│ │ ├── dataset.py
│ │ └── user.py
│ ├── schemas/ # Pydantic schemas
│ │ ├── auth.py
│ │ ├── dataset.py
│ │ └── source.py
│ ├── services/ # Business logic
│ │ ├── metadata_service.py
│ │ └── source_service.py
│ ├── main.py
│ └── settings.py
├── tests/
├── Dockerfile
├── docker-compose.yml
├── requirements.txt
└── .env.example
Release files for ai-trustgraph 0.2.2
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| ai_trustgraph-0.2.2.tar.gz | 31.9 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| ai_trustgraph-0.2.2-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 82.1 kB
Release files / ai_trustgraph-0.2.2.tar.gz
| Download URL | ai_trustgraph-0.2.2.tar.gz |
|---|---|
| Size | 31.9 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
2bf4dad80333dfbc049e4c0505c7a4ce7d9895580a5d4cbe74cfd93f20099cfe
|
|
BLAKE2b-256 checksum How to use checksums |
8cfda67dca80822f3c6c25107d69afd9edb979890a9dfc3c97c32b399ba0c0c6
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/7.0.0 CPython/3.11.6
|
Release files / ai_trustgraph-0.2.2-py3-none-any.whl
| Download URL | ai_trustgraph-0.2.2-py3-none-any.whl |
|---|---|
| Size | 50.3 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
dcb72ad49595241480493b109afc854a8398bbed80fc20904593aa8f64ac6e92
|
|
BLAKE2b-256 checksum How to use checksums |
711e76b271c2b898e7f97a67fcfc08eab51f0aa5e7489c550c327cf8de89dccd
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/7.0.0 CPython/3.11.6
|