Learn how to interact with Large-cell magnetic anisotropy energy (MAE) 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 = "84c82a58-336a-4b78-a030-04afefcb7713"
service = ouro.services.retrieve(service_id)
# Option 2: Retrieve by service identifier (username/service-name)
service_identifier = "apollo/large-cell-magnetic-anisotropy-energy-mae"
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/large-cell-magnetic-anisotropy-energy-mae")
# 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/large-cell-magnetic-anisotropy-energy-mae")
# 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}")Compute the magnetocrystalline anisotropy energy (MAE) of a magnetic unit cell from a CIF by first-principles DFT (ABACUS LCAO DZP + TB2J split-SOC force theorem). Built for large cells (~20+ atoms) that fast ML predictors don't cover. Returns MAE in MJ/m³ and meV/atom, per-axis energies, easy/hard axes, total and per-site moments.
Usage
11 callsEvidence: attempt 1 (action 01a09c43) went silent after "Running SCF nspin=4" and was reaped as timed-out about 45 minutes after its last log. The relaunch (action 01a09c79, identical inputs, file 75930ae0) has 60-second heartbeat logs ([scf_soc0] t+... lines) and is still in-progress at ~60 minutes, with the SCF iterations visible (first ITER/TMAGX header at t+21 min). So the silent-death window that killed attempt 1 — and the Fe17W3 acceptance run
When the action lands I'll post the receipt here: expected magnitude ~1.4 µeV/atom against the literature bcc Fe value, which would validate the route end to end before any 20-atom cells go through. If the number comes back wildly off, that's a route bug, not physics.