Skip to content

Releases: STEMgraph/online_api

Adding new Nodes

Choose a tag to compare

@MaxClerkwell MaxClerkwell released this 03 Mar 11:50

🚀 STEMgraph API - Version 2.0

Derived from v2.0.3

🔥 Major Enhancements & New Features

This release introduces significant refactoring and enhanced functionality for improved reliability, usability, and performance. The API is now running at:

🔗 STEMgraph API Documentation


🆕 Key Additions & Changes

✅ New Dependency Resolution Endpoints

  • GET /builds_on_list/{uuid} - Returns all UUIDs a node depends on as a flat list.
  • GET /builds_on_tree/{uuid} - Returns dependency relationships as a nested tree.

✅ Typer-based CLI Wrapper for API Execution

  • Introduced STEMgraph_API.py, which wraps FastAPI execution using Typer.
  • Added --test flag to validate Neo4j connectivity before launching the API.

✅ Improved API Startup Reliability

  • Health check now runs on startup, retrying until Neo4j is available.
  • API will not start until Neo4j is successfully connected.

✅ Docker & Deployment Enhancements

  • Dockerfile now runs the health check (--test) before launching the API to ensure stable deployments.
  • Updated docker-compose.yml to use latest tag for better version management.

✅ Improved Logging & Debugging

  • Enhanced logging for API startup, health checks, and database errors.
  • Standardized logs using Uvicorn for consistency across deployments.

🛠 How to Upgrade

If using Docker:

docker pull stemgraph_api:latest
docker stack deploy --compose-file docker-compose.yml stemgraph_stack

If running locally:

git pull origin master
python app/STEMgraph_API.py --test  # Verify Neo4j connection
python app/STEMgraph_API.py  # Start the API

📢 Discussion & Contribution

💬 Share your feedback in our GitHub Discussions.
🚀 Contributions are welcome! Contact sboekelmann@ep1.rub.de for more details.


🎯 Upcoming Features

✅ Graph retrieval in multiple formats.
✅ Shortest path computation between nodes.
✅ Auto-generated PDF documentation for node metadata.

This version represents a major step forward in API stability and usability. Thanks for using STEMgraph! 🚀

Initial Release

Choose a tag to compare

@MaxClerkwell MaxClerkwell released this 25 Feb 13:11

STEMgraph API - Current Live API

🚀 Version: 1.0.1

This is the current live API running on the STEMgraph server. 🎉 It provides structured access to the STEMgraph database, allowing users to interact with graph data securely and efficiently.

🔥 Key Features

  • Graph Data Retrieval: Fetch the latest graph structure with /graph.
  • Node Creation: Securely add new nodes via /node (only for authorized power users with write access).
  • FastAPI Framework: Optimized for high performance and easy extensibility.
  • Secure API Access: Uses Docker Secrets to protect credentials and API keys.
  • Automated Background Caching: Keeps graph data fresh with periodic updates.
  • Logging with Uvicorn: Consistent logging for better debugging.

🛡 Node Creation Restrictions

  • Only authenticated power users with write access can create new nodes.
  • If you need write access, please contact sboekelmann@ep1.rub.de.

📜 How to Use the API

  • The API is not meant to be run locally but is available on the STEMgraph server.
  • Users can access the API endpoints via the official server.
  • API requests must include the appropriate authentication headers.

📢 Discussion & Contribution

🎯 Upcoming Features

The following features are planned for future releases:

  • Retrieve the graph in different formats.
  • Return the shortest path between two nodes in the graph.
  • Generate and return a PDF for a specific node.
  • Return all nodes that a given node is built upon.

This API is actively maintained and improved—feedback and contributions are always welcome! 🚀