Estimate cost for a small molecule library screen
Estimate the cost of a small molecule library screen without creating any resource or consuming GPU.
ParametersExpand Collapse
body SmallMoleculeLibraryScreenEstimateCostParams
Molecules param.Field[[]SmallMoleculeLibraryScreenEstimateCostParamsMolecule]List of small molecules to screen.
List of small molecules to screen.
Target param.Field[SmallMoleculeLibraryScreenEstimateCostParamsTarget]Target protein sequences for small molecule design or screening.
Target protein sequences for small molecule design or screening.
Entities []SmallMoleculeLibraryScreenEstimateCostParamsTargetEntityProtein entities defining the target structure. Each entity represents a protein chain.
Protein entities defining the target structure. Each entity represents a protein chain.
Bonds []SmallMoleculeLibraryScreenEstimateCostParamsTargetBondOptionalCovalent bond constraints between atoms in the target complex. Atom-level ligand references currently support ligand_ccd only; ligand_smiles is unsupported.
Covalent bond constraints between atoms in the target complex. Atom-level ligand references currently support ligand_ccd only; ligand_smiles is unsupported.
Atom1 SmallMoleculeLibraryScreenEstimateCostParamsTargetBondAtom1UnionLigand atom reference. Atom-level ligand references currently support ligand_ccd entities only; ligand_smiles is unsupported.
Ligand atom reference. Atom-level ligand references currently support ligand_ccd entities only; ligand_smiles is unsupported.
Atom2 SmallMoleculeLibraryScreenEstimateCostParamsTargetBondAtom2UnionLigand atom reference. Atom-level ligand references currently support ligand_ccd entities only; ligand_smiles is unsupported.
Ligand atom reference. Atom-level ligand references currently support ligand_ccd entities only; ligand_smiles is unsupported.
Constraints []SmallMoleculeLibraryScreenEstimateCostParamsTargetConstraintUnionOptionalStructural constraints (pocket and contact). Atom-level ligand references currently support ligand_ccd only; ligand_smiles is unsupported.
Structural constraints (pocket and contact). Atom-level ligand references currently support ligand_ccd only; ligand_smiles is unsupported.
type SmallMoleculeLibraryScreenEstimateCostParamsTargetConstraintPocketConstraint struct{…}Constrains the binder to interact with specific pocket residues on the target.
Constrains the binder to interact with specific pocket residues on the target.
Binding pocket residues keyed by chain ID. Each key is a chain ID (e.g. “A”) and the value is an array of 0-indexed residue indices that define the pocket on that chain.
type SmallMoleculeLibraryScreenEstimateCostParamsTargetConstraintContactConstraint struct{…}Contact constraint between two tokens. Atom-level ligand references currently support ligand_ccd entities only; ligand_smiles is unsupported.
Contact constraint between two tokens. Atom-level ligand references currently support ligand_ccd entities only; ligand_smiles is unsupported.
Token1 SmallMoleculeLibraryScreenEstimateCostParamsTargetConstraintContactConstraintToken1UnionLigand contact token. Atom-level ligand references currently support ligand_ccd entities only; ligand_smiles is unsupported.
Ligand contact token. Atom-level ligand references currently support ligand_ccd entities only; ligand_smiles is unsupported.
type SmallMoleculeLibraryScreenEstimateCostParamsTargetConstraintContactConstraintToken1PolymerContactToken struct{…}
Token2 SmallMoleculeLibraryScreenEstimateCostParamsTargetConstraintContactConstraintToken2UnionLigand contact token. Atom-level ligand references currently support ligand_ccd entities only; ligand_smiles is unsupported.
Ligand contact token. Atom-level ligand references currently support ligand_ccd entities only; ligand_smiles is unsupported.
type SmallMoleculeLibraryScreenEstimateCostParamsTargetConstraintContactConstraintToken2PolymerContactToken struct{…}
Binding pocket residues, keyed by chain ID. Each key is a chain ID (e.g. “A”) and the value is an array of 0-indexed residue indices that define the binding pocket on that chain. When provided, these residues guide pocket extraction and add a derived pocket constraint during affinity predictions. That derived constraint remains separate from any explicit pocket constraints in target.constraints. When omitted, the model auto-detects the pocket.
Client-provided key to prevent duplicate submissions on retries
Molecule filtering configuration. Controls both Boltz built-in SMARTS filtering and custom filters.
Molecule filtering configuration. Controls both Boltz built-in SMARTS filtering and custom filters.
BoltzSmartsCatalogFilterLevel SmallMoleculeLibraryScreenEstimateCostParamsMoleculeFiltersBoltzSmartsCatalogFilterLevelOptionalControls the stringency of Boltz’s built-in SMARTS structural alert filtering, which removes molecules matching known problematic substructures. ‘recommended’ (default): applies a curated set of alerts balancing safety and hit rate. ‘extra’: adds additional alerts beyond the recommended set for stricter filtering. ‘aggressive’: applies the most comprehensive alert set — may reject viable molecules. ‘disabled’: turns off Boltz SMARTS filtering entirely; only custom_filters will be applied.
Controls the stringency of Boltz’s built-in SMARTS structural alert filtering, which removes molecules matching known problematic substructures. ‘recommended’ (default): applies a curated set of alerts balancing safety and hit rate. ‘extra’: adds additional alerts beyond the recommended set for stricter filtering. ‘aggressive’: applies the most comprehensive alert set — may reject viable molecules. ‘disabled’: turns off Boltz SMARTS filtering entirely; only custom_filters will be applied.
CustomFilters []SmallMoleculeLibraryScreenEstimateCostParamsMoleculeFiltersCustomFilterUnionOptionalCustom filters to apply. Molecules must pass all filters (AND logic).
Custom filters to apply. Molecules must pass all filters (AND logic).
type SmallMoleculeLibraryScreenEstimateCostParamsMoleculeFiltersCustomFilterLipinskiFilter struct{…}Lipinski’s Rule of Five filter. Rejects molecules that violate drug-likeness criteria based on molecular weight, LogP, hydrogen bond donors, and hydrogen bond acceptors.
Lipinski’s Rule of Five filter. Rejects molecules that violate drug-likeness criteria based on molecular weight, LogP, hydrogen bond donors, and hydrogen bond acceptors.
type SmallMoleculeLibraryScreenEstimateCostParamsMoleculeFiltersCustomFilterRdkitDescriptorFilter struct{…}Filter molecules by RDKit molecular descriptors. Each descriptor is constrained to a min/max range. Only descriptors you provide are checked — omitted descriptors are unconstrained.
Filter molecules by RDKit molecular descriptors. Each descriptor is constrained to a min/max range. Only descriptors you provide are checked — omitted descriptors are unconstrained.
FractionCsp3 SmallMoleculeLibraryScreenEstimateCostParamsMoleculeFiltersCustomFilterRdkitDescriptorFilterFractionCsp3OptionalMin/max range constraint for an RDKit molecular descriptor
Min/max range constraint for an RDKit molecular descriptor
MolLogp SmallMoleculeLibraryScreenEstimateCostParamsMoleculeFiltersCustomFilterRdkitDescriptorFilterMolLogpOptionalMin/max range constraint for an RDKit molecular descriptor
Min/max range constraint for an RDKit molecular descriptor
MolWt SmallMoleculeLibraryScreenEstimateCostParamsMoleculeFiltersCustomFilterRdkitDescriptorFilterMolWtOptionalMin/max range constraint for an RDKit molecular descriptor
Min/max range constraint for an RDKit molecular descriptor
NumAromaticRings SmallMoleculeLibraryScreenEstimateCostParamsMoleculeFiltersCustomFilterRdkitDescriptorFilterNumAromaticRingsOptionalMin/max range constraint for an RDKit molecular descriptor
Min/max range constraint for an RDKit molecular descriptor
NumHAcceptors SmallMoleculeLibraryScreenEstimateCostParamsMoleculeFiltersCustomFilterRdkitDescriptorFilterNumHAcceptorsOptionalMin/max range constraint for an RDKit molecular descriptor
Min/max range constraint for an RDKit molecular descriptor
NumHDonors SmallMoleculeLibraryScreenEstimateCostParamsMoleculeFiltersCustomFilterRdkitDescriptorFilterNumHDonorsOptionalMin/max range constraint for an RDKit molecular descriptor
Min/max range constraint for an RDKit molecular descriptor
NumHeteroatoms SmallMoleculeLibraryScreenEstimateCostParamsMoleculeFiltersCustomFilterRdkitDescriptorFilterNumHeteroatomsOptionalMin/max range constraint for an RDKit molecular descriptor
Min/max range constraint for an RDKit molecular descriptor
NumRings SmallMoleculeLibraryScreenEstimateCostParamsMoleculeFiltersCustomFilterRdkitDescriptorFilterNumRingsOptionalMin/max range constraint for an RDKit molecular descriptor
Min/max range constraint for an RDKit molecular descriptor
type SmallMoleculeLibraryScreenEstimateCostParamsMoleculeFiltersCustomFilterSmartsCustomFilter struct{…}Filter molecules by custom SMARTS patterns. Molecules matching any pattern are rejected.
Filter molecules by custom SMARTS patterns. Molecules matching any pattern are rejected.
type SmallMoleculeLibraryScreenEstimateCostParamsMoleculeFiltersCustomFilterSmartsCatalogFilter struct{…}Filter molecules using a predefined SMARTS catalog of structural alerts.
Filter molecules using a predefined SMARTS catalog of structural alerts.
Catalog stringPredefined SMARTS catalog to apply. PAINS, BRENK, ChEMBL, and NIH catalogs reject known problematic substructures.
Predefined SMARTS catalog to apply. PAINS, BRENK, ChEMBL, and NIH catalogs reject known problematic substructures.
ReturnsExpand Collapse
type SmallMoleculeLibraryScreenEstimateCostResponse struct{…}Estimate response with monetary values encoded as decimal strings to preserve precision.
Estimate response with monetary values encoded as decimal strings to preserve precision.
Breakdown SmallMoleculeLibraryScreenEstimateCostResponseBreakdownCost breakdown for the billed application.
Cost breakdown for the billed application.
Application SmallMoleculeLibraryScreenEstimateCostResponseBreakdownApplication
Estimate cost for a small molecule library screen
package main
import (
"context"
"fmt"
"github.com/boltz-bio/boltz-api-go"
"github.com/boltz-bio/boltz-api-go/option"
)
func main() {
client := boltzapi.NewClient(
option.WithAPIKey("My API Key"),
)
response, err := client.SmallMolecule.LibraryScreen.EstimateCost(context.TODO(), boltzapi.SmallMoleculeLibraryScreenEstimateCostParams{
Molecules: []boltzapi.SmallMoleculeLibraryScreenEstimateCostParamsMolecule{boltzapi.SmallMoleculeLibraryScreenEstimateCostParamsMolecule{
Smiles: "smiles",
}},
Target: boltzapi.SmallMoleculeLibraryScreenEstimateCostParamsTarget{
Entities: []boltzapi.SmallMoleculeLibraryScreenEstimateCostParamsTargetEntity{boltzapi.SmallMoleculeLibraryScreenEstimateCostParamsTargetEntity{
ChainIDs: []string{"string"},
Value: "value",
}},
},
})
if err != nil {
panic(err.Error())
}
fmt.Printf("%+v\n", response.Breakdown)
}
{
"breakdown": {
"application": "structure_and_binding",
"cost_per_unit_usd": "0.0500",
"num_units": 1
},
"disclaimer": "This is an estimate only and may differ from your actual charges. Final billing is based on exact token counts computed at run time. For large library screens, the estimate is extrapolated from a sample and may be less accurate for highly variable inputs.",
"estimated_cost_usd": "0.0500"
}Returns Examples
{
"breakdown": {
"application": "structure_and_binding",
"cost_per_unit_usd": "0.0500",
"num_units": 1
},
"disclaimer": "This is an estimate only and may differ from your actual charges. Final billing is based on exact token counts computed at run time. For large library screens, the estimate is extrapolated from a sample and may be less accurate for highly variable inputs.",
"estimated_cost_usd": "0.0500"
}