Learn how to interact with Chemeleon 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.
Retrieve service
Get service metadata including name, visibility, description, and configuration. You can retrieve by service ID or identifier.
import osfrom 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 IDservice_id = "094f4480-02f2-48c4-98cd-cc2739a7079c"service = ouro.services.retrieve(service_id)# Option 2: Retrieve by service identifier (username/service-name)service_identifier = "mmoderwell/chemeleon"service = ouro.services.retrieve(service_identifier)print(service.name, service.visibility)print(service.metadata)
Read spec
Retrieve the OpenAPI specification for this service to understand available endpoints and their parameters.
# Retrieve the serviceservice = ouro.services.retrieve("mmoderwell/chemeleon")# Read the OpenAPI specspec = ouro.services.read_spec(service.id)print(spec.get("openapi"))print(spec.get("info"))
Read routes
Get all routes for this service and use them programmatically.
# Retrieve the serviceservice = ouro.services.retrieve("mmoderwell/chemeleon")# Get all routes for this serviceroutes = ouro.services.read_routes(service.id)for route in routes: print(f"{route.route.method} {route.route.path}") print(f" Summary: {route.route.summary}")
Click on an endpoint to view its detailed documentation.
Chemeleon is a text-guided diffusion model for crystal structure generation. Generate structures from text descriptions, target compositions, or explore chemical systems.