mfsig.com
Referencia de la API

API Python + HTTP

El mismo vocabulario en ambas. Modelos Pydantic en el cable; FullOutput Pydantic en Python. Especificación OpenAPI generada automáticamente en /openapi.json.

Python (en proceso)

# Submit a SMILES, get a signed .mfsig.json
curl -X POST https://api.mfsig.com/v1/sigma_profile \
  -H "Authorization: Bearer $MFSIG_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "smiles":  "CC(=O)Oc1ccccc1C(=O)O",
    "tier":    "pro",
    "solvent": "water"
  }'

# → 202 Accepted
#   { "job_id":"job_8K2…", "status":"queued",
#     "eta_s": 22 }

HTTP (servicio FastAPI)

# Poll, or supply a webhook_url and we POST on completion.
curl https://api.mfsig.com/v1/jobs/job_8K2... \
  -H "Authorization: Bearer $MFSIG_API_KEY"

# → 200 OK
#   { "status":   "done",
#     "mfsig_url":"https://mfsig.com/d/aspirin.mfsig.json",
#     "sha256":   "e3b0c44298fc1c14...",
#     "gates":    {"scf":true,"sigma":true,"audit":true,
#                  "geometry":true} }

Rutas

GET/healthzops

Sonda de vivacidad. Siempre devuelve 200 si el proceso está en ejecución. Úsala como livenessProbe de Kubernetes.

GET/readyzops

Sonda de preparación. 503 si no hay ningún backend importable.

GET/methodsinfo

Matriz de disponibilidad de grados: Pro / Platinum / Reference + versiones + preajustes.

POST/sigma_profilecompute

La ruta principal: σ-profile para un SMILES. Grados Pro / Platinum / Reference con vocabulario completo de opciones.

POST/conformer_funnelcompute

σ-profile de conjunto de confórmeros para esqueletos flexibles. Salida ponderada por Boltzmann. La misma traza de auditoría .mfsig por molécula.

POST/convert/from_legacyconvert

.cosmo de proveedor → JSON FullOutput de MolForge. Pasa el contenido en línea o server_path. Detecta el proveedor automáticamente o especifícalo explícitamente.

POST/convert/to_legacyconvert

JSON de MolForge → formato de texto de proveedor. Turbomole / COSMOtherm σ / JSON / CSV.

POST/convert/databaseconvert

Migración por lotes de directorios del lado del servidor. Idempotente, reanudable, con diagnósticos por archivo en ConversionReport.

POST/mfsig/writeapex

Envuelve un resultado de σ-profile en .mfsig.json v2.0-apex: auditoría SHA-256 + reproducibilidad + legacy_vault opcional.

POST/mfsig/verifyapex

Verifica el hash de confianza SHA-256. A prueba de manipulaciones.

GET/openapi.jsondocs

Especificación OpenAPI 3.x legible por máquina.

GET/docsdocs

Interfaz Swagger para exploración interactiva.

GET/redocdocs

Interfaz Redoc para navegación cómoda de lectura.

Autenticación + seguridad

El servicio se entrega sin autenticación: pensado para un despliegue interno de confianza detrás de un proxy inverso o una VPN. No expongas /convert/database directamente a internet: acepta rutas del lado del servidor. CORS es permisivo por defecto; restríngelo mediante la variable de entorno ALLOWED_ORIGINS.

Observabilidad

Línea de registro de ejemplojson
{
  "ts": "2026-05-12T01:24:01Z",
  "level": "INFO",
  "logger": "molforge_sigma.api",
  "msg": "sigma_profile smiles='O' method='dft' wall=12.4s n_atoms=3 n_segments=1432"
}