Library Screen
Screen an existing library of small molecules against a protein target. Results are scored by binding confidence (likelihood of binding, for hit discovery), optimization score (binding strength ranking, for lead optimization), and structure confidence.
Start a small molecule library screen
List small molecule library screens
Get small molecule library screen status
Get screened small molecule candidates
Stop a running small molecule library screen
Delete small molecule library screen data
Estimate cost for a small molecule library screen
ModelsExpand Collapse
LibraryScreenStartResponse object { id, completed_at, created_at, 14 more } A small molecule library screening pipeline run
A small molecule library screening pipeline run
When the input, output, and result data was permanently deleted. Null if data has not been deleted.
Deprecated. Use pipeline_version instead.
input: object { molecules, target, molecule_filters } Pipeline input (null if data deleted)
Pipeline input (null if data deleted)
target: object { entities, bonds, constraints, 3 more } Target protein sequences for small molecule design or screening.
Target protein sequences for small molecule design or screening.
entities: array of object { chain_ids, type, value, 2 more } Protein entities defining the target structure. Each entity represents a protein chain.
Protein entities defining the target structure. Each entity represents a protein chain.
bonds: optional array of object { atom1, atom2 } Covalent 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: object { atom_name, chain_id, type } or object { atom_name, chain_id, residue_index, type } Ligand 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: object { atom_name, chain_id, type } or object { atom_name, chain_id, residue_index, type } Ligand 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: optional array of object { binder_chain_id, contact_residues, max_distance_angstrom, 2 more } or object { max_distance_angstrom, token1, token2, 2 more } Structural 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.
PocketConstraintResponse object { binder_chain_id, contact_residues, max_distance_angstrom, 2 more } 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.
ContactConstraintResponse object { max_distance_angstrom, token1, token2, 2 more } 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: object { chain_id, residue_index, type } or object { atom_name, chain_id, type } Ligand 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.
token2: object { chain_id, residue_index, type } or object { atom_name, chain_id, type } Ligand 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.
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.
molecule_filters: optional object { boltz_smarts_catalog_filter_level, custom_filters } 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.
boltz_smarts_catalog_filter_level: optional "recommended" or "extra" or "aggressive" or "disabled"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.
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.
custom_filters: optional array of object { max_hba, max_hbd, max_logp, 3 more } or object { type, fraction_csp3, mol_logp, 8 more } or object { patterns, type } or 2 moreCustom filters to apply. Molecules must pass all filters (AND logic).
Custom filters to apply. Molecules must pass all filters (AND logic).
LipinskiFilterResponse object { max_hba, max_hbd, max_logp, 3 more } 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.
RdkitDescriptorFilterResponse object { type, fraction_csp3, mol_logp, 8 more } 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.
fraction_csp3: optional object { max, min } Min/max range constraint for an RDKit molecular descriptor
Min/max range constraint for an RDKit molecular descriptor
num_aromatic_rings: optional object { max, min } Min/max range constraint for an RDKit molecular descriptor
Min/max range constraint for an RDKit molecular descriptor
num_h_acceptors: optional object { max, min } Min/max range constraint for an RDKit molecular descriptor
Min/max range constraint for an RDKit molecular descriptor
num_h_donors: optional object { max, min } Min/max range constraint for an RDKit molecular descriptor
Min/max range constraint for an RDKit molecular descriptor
num_heteroatoms: optional object { max, min } Min/max range constraint for an RDKit molecular descriptor
Min/max range constraint for an RDKit molecular descriptor
SmartsCustomFilterResponse object { patterns, type } Filter molecules by custom SMARTS patterns. Molecules matching any pattern are rejected.
Filter molecules by custom SMARTS patterns. Molecules matching any pattern are rejected.
progress: object { num_molecules_failed, num_molecules_screened, total_molecules_to_screen, 2 more }
Number of accepted molecules that reached terminal failure during screening.
Number of accepted molecules that produced usable screening results.
LibraryScreenListResponse object { id, completed_at, created_at, 13 more } Summary of a small molecule library screening pipeline run (excludes input)
Summary of a small molecule library screening pipeline run (excludes input)
When the input, output, and result data was permanently deleted. Null if data has not been deleted.
Deprecated. Use pipeline_version instead.
progress: object { num_molecules_failed, num_molecules_screened, total_molecules_to_screen, 2 more }
Number of accepted molecules that reached terminal failure during screening.
Number of accepted molecules that produced usable screening results.
LibraryScreenRetrieveResponse object { id, completed_at, created_at, 14 more } A small molecule library screening pipeline run
A small molecule library screening pipeline run
When the input, output, and result data was permanently deleted. Null if data has not been deleted.
Deprecated. Use pipeline_version instead.
input: object { molecules, target, molecule_filters } Pipeline input (null if data deleted)
Pipeline input (null if data deleted)
target: object { entities, bonds, constraints, 3 more } Target protein sequences for small molecule design or screening.
Target protein sequences for small molecule design or screening.
entities: array of object { chain_ids, type, value, 2 more } Protein entities defining the target structure. Each entity represents a protein chain.
Protein entities defining the target structure. Each entity represents a protein chain.
bonds: optional array of object { atom1, atom2 } Covalent 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: object { atom_name, chain_id, type } or object { atom_name, chain_id, residue_index, type } Ligand 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: object { atom_name, chain_id, type } or object { atom_name, chain_id, residue_index, type } Ligand 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: optional array of object { binder_chain_id, contact_residues, max_distance_angstrom, 2 more } or object { max_distance_angstrom, token1, token2, 2 more } Structural 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.
PocketConstraintResponse object { binder_chain_id, contact_residues, max_distance_angstrom, 2 more } 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.
ContactConstraintResponse object { max_distance_angstrom, token1, token2, 2 more } 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: object { chain_id, residue_index, type } or object { atom_name, chain_id, type } Ligand 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.
token2: object { chain_id, residue_index, type } or object { atom_name, chain_id, type } Ligand 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.
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.
molecule_filters: optional object { boltz_smarts_catalog_filter_level, custom_filters } 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.
boltz_smarts_catalog_filter_level: optional "recommended" or "extra" or "aggressive" or "disabled"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.
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.
custom_filters: optional array of object { max_hba, max_hbd, max_logp, 3 more } or object { type, fraction_csp3, mol_logp, 8 more } or object { patterns, type } or 2 moreCustom filters to apply. Molecules must pass all filters (AND logic).
Custom filters to apply. Molecules must pass all filters (AND logic).
LipinskiFilterResponse object { max_hba, max_hbd, max_logp, 3 more } 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.
RdkitDescriptorFilterResponse object { type, fraction_csp3, mol_logp, 8 more } 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.
fraction_csp3: optional object { max, min } Min/max range constraint for an RDKit molecular descriptor
Min/max range constraint for an RDKit molecular descriptor
num_aromatic_rings: optional object { max, min } Min/max range constraint for an RDKit molecular descriptor
Min/max range constraint for an RDKit molecular descriptor
num_h_acceptors: optional object { max, min } Min/max range constraint for an RDKit molecular descriptor
Min/max range constraint for an RDKit molecular descriptor
num_h_donors: optional object { max, min } Min/max range constraint for an RDKit molecular descriptor
Min/max range constraint for an RDKit molecular descriptor
num_heteroatoms: optional object { max, min } Min/max range constraint for an RDKit molecular descriptor
Min/max range constraint for an RDKit molecular descriptor
SmartsCustomFilterResponse object { patterns, type } Filter molecules by custom SMARTS patterns. Molecules matching any pattern are rejected.
Filter molecules by custom SMARTS patterns. Molecules matching any pattern are rejected.
progress: object { num_molecules_failed, num_molecules_screened, total_molecules_to_screen, 2 more }
Number of accepted molecules that reached terminal failure during screening.
Number of accepted molecules that produced usable screening results.
LibraryScreenListResultsResponse object { id, artifacts, created_at, 5 more } Result for a single screened small molecule
Result for a single screened small molecule
artifacts: object { archive, structure, ligand_structure }
metrics: object { binding_confidence, complex_iplddt, complex_plddt, 4 more } Scoring metrics for a screened small molecule
Scoring metrics for a screened small molecule
Confidence that the molecule binds the target (0-1). Primary metric for hit discovery.
Interface pLDDT for the complex (0-1 float). Confidence at the binding interface.
Interface predicted TM score (0-1). Confidence in relative positioning of ligand and protein.
LibraryScreenStopResponse object { id, completed_at, created_at, 14 more } A small molecule library screening pipeline run
A small molecule library screening pipeline run
When the input, output, and result data was permanently deleted. Null if data has not been deleted.
Deprecated. Use pipeline_version instead.
input: object { molecules, target, molecule_filters } Pipeline input (null if data deleted)
Pipeline input (null if data deleted)
target: object { entities, bonds, constraints, 3 more } Target protein sequences for small molecule design or screening.
Target protein sequences for small molecule design or screening.
entities: array of object { chain_ids, type, value, 2 more } Protein entities defining the target structure. Each entity represents a protein chain.
Protein entities defining the target structure. Each entity represents a protein chain.
bonds: optional array of object { atom1, atom2 } Covalent 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: object { atom_name, chain_id, type } or object { atom_name, chain_id, residue_index, type } Ligand 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: object { atom_name, chain_id, type } or object { atom_name, chain_id, residue_index, type } Ligand 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: optional array of object { binder_chain_id, contact_residues, max_distance_angstrom, 2 more } or object { max_distance_angstrom, token1, token2, 2 more } Structural 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.
PocketConstraintResponse object { binder_chain_id, contact_residues, max_distance_angstrom, 2 more } 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.
ContactConstraintResponse object { max_distance_angstrom, token1, token2, 2 more } 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: object { chain_id, residue_index, type } or object { atom_name, chain_id, type } Ligand 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.
token2: object { chain_id, residue_index, type } or object { atom_name, chain_id, type } Ligand 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.
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.
molecule_filters: optional object { boltz_smarts_catalog_filter_level, custom_filters } 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.
boltz_smarts_catalog_filter_level: optional "recommended" or "extra" or "aggressive" or "disabled"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.
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.
custom_filters: optional array of object { max_hba, max_hbd, max_logp, 3 more } or object { type, fraction_csp3, mol_logp, 8 more } or object { patterns, type } or 2 moreCustom filters to apply. Molecules must pass all filters (AND logic).
Custom filters to apply. Molecules must pass all filters (AND logic).
LipinskiFilterResponse object { max_hba, max_hbd, max_logp, 3 more } 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.
RdkitDescriptorFilterResponse object { type, fraction_csp3, mol_logp, 8 more } 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.
fraction_csp3: optional object { max, min } Min/max range constraint for an RDKit molecular descriptor
Min/max range constraint for an RDKit molecular descriptor
num_aromatic_rings: optional object { max, min } Min/max range constraint for an RDKit molecular descriptor
Min/max range constraint for an RDKit molecular descriptor
num_h_acceptors: optional object { max, min } Min/max range constraint for an RDKit molecular descriptor
Min/max range constraint for an RDKit molecular descriptor
num_h_donors: optional object { max, min } Min/max range constraint for an RDKit molecular descriptor
Min/max range constraint for an RDKit molecular descriptor
num_heteroatoms: optional object { max, min } Min/max range constraint for an RDKit molecular descriptor
Min/max range constraint for an RDKit molecular descriptor
SmartsCustomFilterResponse object { patterns, type } Filter molecules by custom SMARTS patterns. Molecules matching any pattern are rejected.
Filter molecules by custom SMARTS patterns. Molecules matching any pattern are rejected.
progress: object { num_molecules_failed, num_molecules_screened, total_molecules_to_screen, 2 more }
Number of accepted molecules that reached terminal failure during screening.
Number of accepted molecules that produced usable screening results.
LibraryScreenEstimateCostResponse object { breakdown, disclaimer, estimated_cost_usd } 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: object { application, cost_per_unit_usd, num_units } Cost breakdown for the billed application.
Cost breakdown for the billed application.