Skip to content

Peptide sequence ⇄ SMILES converter

Route

/sequence

API

Sequence to SMILES:

POST /api/sequence-to-smiles
Content-Type: application/json

{"sequence":"ACDEFGHIK"}

SMILES to sequence:

POST /api/smiles-to-sequence
Content-Type: application/json

{"smiles":"N[C@@H](CS)C(=O)O"}

Sequence -> SMILES

RDKit MolFromSequence() constructs a standard linear peptide. The returned SMILES is canonical and isomeric. The current convention uses RDKit's ordinary free N- and C-termini.

Only the 20 standard one-letter residue codes are accepted.

SMILES -> sequence

This direction is intentionally conservative. The backend:

  1. parses the molecule;
  2. normalizes common charge forms for residue recognition;
  3. identifies local N-C(alpha)-C(=O) motifs;
  4. orders those motifs through peptide C(=O)-N connectivity;
  5. extracts each side-chain graph;
  6. compares it with standard residue signatures generated from RDKit's own amino-acid templates;
  7. checks explicit alpha-carbon stereochemistry against the standard L-residue convention.

A molecule is rejected rather than guessed when it contains a cyclic backbone, branching, disconnected peptide components, a nonstandard/modified residue, or explicit alpha stereochemistry inconsistent with the standard sequence model.

Important limitation

A generic SMILES string does not have an intrinsic amino-acid sequence. Sequence recovery is meaningful only when the chemical graph can be segmented into recognizable peptide residues.

Disulfide-linked peptides should eventually be represented as:

sequence + crosslink metadata

rather than pretending that the crosslink is encoded by the linear sequence alone.

Source: SEQUENCE_CONVERTER.md in the server package · updated