CHEESE API

Core concepts

Chemical spaces, facades, selections, constraints, objectives, portfolios, and runs.

Suggest an edit

Chemical space

A chemical space is a versioned searchable collection. Requests use database_id for compatibility; responses pin the immutable database_release that was actually searched.

Simple operations and canonical selections

The simple routes are ergonomic facades over molecule-selection/1:

RouteCanonical meaning
/searchOne reference, ranked by ECFP4/Tanimoto
/search_cheeseOne reference, ranked by CHEESE shape or electrostatic score
/search_substructureA positive exact structure constraint
/sampleAn unconstrained sample from the advertised distribution

Use a facade to get started. Use /selections when you need composable scientific intent or want a portable document shared by HTTP, Python, CLI, UI, and agents.

Strategy, constraints, objectives, and portfolio

  • strategy says how eligible space is explored: ranked or sampled.
  • constraints are hard eligibility gates. Returned assembled products satisfy exact hard gates.
  • objectives rank eligible products and never masquerade as hard filters.
  • portfolio controls the returned set, such as its limit or per-scaffold cap.

Approximate synthon-level descriptors can accelerate acquisition, but a hard constraint is verified on every returned assembled product. Predictive properties identify model version, applicability, uncertainty, and missing-value behavior. Coverage below 100% is a warning, not proof of absence.

Synchronous work and runs

Singular bounded work may execute synchronously. Every multi-query workload and every selection that exceeds its synchronous estimate uses run/1. Runs pin releases, survive client disconnects, expose per-item progress and partial results, and isolate one invalid molecule from valid siblings.

On this page