Tools · Cheminformatics & Structure
Molecule Standardizer
Salt-strip, neutralize, tautomer, and stereo cleanup to parent structures
On this page
Prices, workflows, and method papersOpen in the app
Run it from the API
Submit with Submit a job and the job_type below. Price it first with Estimate job reservation cost: submitting reserves that amount from your wallet, and the charge settles at the actual runtime.
Molecule Standardizer molecule-standardize
- Job type
molecule-standardize- Hardware
cpu(default)- Typical runtime
- 5 min on CPU
Payload
| Field | Type | Description |
|---|---|---|
input_data[]required | (string | object)[] | Limits: |
input_formatrequired | string | One of: |
largest_fragment | boolean | Default: |
uncharge | boolean | Default: |
canonical_tautomer | boolean | Default: |
cleanup_stereo | boolean | Default: |
Example
from cognichem_client import CogniChem
client = CogniChem.from_env() # reads COGNICHEM_API_KEY
payload = {
"input_data": ["CC(=O)[O-].[Na+]", "Oc1ccccc1"],
"input_format": "smiles",
"largest_fragment": True,
"uncharge": True,
"canonical_tautomer": True,
"cleanup_stereo": True,
}
estimate = client.jobs.estimate(job_type="molecule-standardize", payload=payload, resource="cpu")
print(f"Reserves ${estimate.cost:.2f}")
job = client.jobs.submit(
job_name="my-molecule-standardize-run",
job_type="molecule-standardize",
payload=payload,
resource="cpu",
)
status = client.jobs.wait(job.process_id)
if status.status == "completed":
client.jobs.result(job.process_id, save_path=".")curl -X POST "https://api.cognichem.com/api/v1/jobs/submit" \
-H "X-Api-Key: $COGNICHEM_API_KEY" \
-H "Idempotency-Key: $(uuidgen)" \
-H "Content-Type: application/json" \
-d '{
"job_name": "my-molecule-standardize-run",
"job_type": "molecule-standardize",
"payload": {
"input_data": [
"CC(=O)[O-].[Na+]",
"Oc1ccccc1"
],
"input_format": "smiles",
"largest_fragment": true,
"uncharge": true,
"canonical_tautomer": true,
"cleanup_stereo": true
},
"resource": "cpu"
}'{
"input_data": [
"CC(=O)[O-].[Na+]",
"Oc1ccccc1"
],
"input_format": "smiles",
"largest_fragment": true,
"uncharge": true,
"canonical_tautomer": true,
"cleanup_stereo": true
}Sample data from the job catalog; long values are shortened here. Each job_name must be unique among your jobs.
Workflow inputs
- Molecules (list)SMILES, SDF, MOLBLOCK, INCHI
Workflow outputs
- ArchiveZIP
- TableCSV
- MoleculesSMILES