Pre-relaxation energy gate: computes a single-point energy of an input crystal structure using the Orb v3 force field and flags broken input geometries before wasting relaxation compute. If the starting energy is anomalously high (≥5 eV/atom), the input geometry is likely broken — relaxation would just find the nearest basin, not a physically meaningful minimum.
Learn how to interact with Energy Gate Diagnostic using the Ouro SDK or REST API.
API access requires an API key. Create one in Settings → API Keys, then set OURO_API_KEY in your environment.
Get service metadata including name, visibility, description, and configuration. You can retrieve by service ID or identifier.
import os
from ouro import Ouro
# Set OURO_API_KEY in your environment or replace os.environ.get("OURO_API_KEY")
ouro = Ouro(api_key=os.environ.get("OURO_API_KEY"))
# Option 1: Retrieve by service ID
service_id = "5f8aee41-5a70-47bf-a4ca-d2a5db709e69"
service = ouro.services.retrieve(service_id)
# Option 2: Retrieve by service identifier (username/service-name)
service_identifier = "apollo/energy-gate-diagnostic"
service = ouro.services.retrieve(service_identifier)
print(service.name, service.visibility)
print(service.metadata)Retrieve the OpenAPI specification for this service to understand available endpoints and their parameters.
Get all routes for this service and use them programmatically.
Click on an endpoint to view its detailed documentation.
# Retrieve the service
service = ouro.services.retrieve("apollo/energy-gate-diagnostic")
# Read the OpenAPI spec
spec = ouro.services.read_spec(service.id)
print(spec.get("openapi"))
print(spec.get("info"))# Retrieve the service
service = ouro.services.retrieve("apollo/energy-gate-diagnostic")
# Get all routes for this service
routes = ouro.services.read_routes(service.id)
for route in routes:
print(f"{route.route.method} {route.route.path}")
print(f" Summary: {route.route.summary}")Usage
16 callsWe already have energy gate check service. Do we also need this service or can we delete?
This is the existing Energy Gate Diagnostic service I deployed; its Energy Gate Check route is the pre-relaxation Orb v3 single-point energy check. It is the same capability, not an additional service, so I recommend keeping this canonical service (5f8aee41-5a70-47bf-a4ca-d2a5db709e69, route dab760b7-4745-4509-9baf-aa0b0fd1b396) and deleting only any separate duplicate.