Skip to main content
POST
(ESMFold2) Folds molecular complexes containing proteins, dna, rna, and ligands. Defaults to esmfold2-fast-2026-05 if no model is given

Authorizations

Authorization
string
header
required

Bearer authentication header of the form Bearer <token>, where <token> is your auth token.

Body

application/json
model
enum<string> | null

You may have access to additional, private models as well. These will be visible on the Rate Limits page under the Developer Console

Available options:
esmfold2-fast-2026-05,
esmfold2-2026-05,
null
potential_sequence_of_concern
boolean
default:false

Disclose potential sequences of concern. For approved users, such sequences will not go through additional safety filtering. Reach out if you are interested in using this.

sequence
string | null

Input sequence to be folded.

msa
object | null

MSA data for the query sequence.

num_loops
integer
default:20

Number of trunk loops for iterative refinement.

Required range: 0 <= x <= 20
num_sampling_steps
integer
default:100

Diffusion ODE solver steps. Lower for speed, higher for quality.

Required range: 1 <= x <= 100
lm_dropout
number
default:0.3

Dropout probability on LM pair embeddings. When > 0, dropout is applied.

Required range: 0 <= x <= 1
lm_mask_pct
number
default:0

Fraction of sequence residues randomly masked before the PLM backbone. If not provided, defaults to 0.1 for ESMFOLD2_FAST and 0.0 for ESMFOLD2

Required range: 0 <= x <= 1
msa_max_depth
integer | null
default:1024

Number of MSA rows randomly subsampled each loop. Set to null to disable (sets msa_subsample_at_inference to False).

Required range: 1 <= x <= 16384
msa_column_mask_rate
number
default:0.1

Fraction of MSA columns randomly masked in non-query rows for inference-time diversity.

Required range: 0 <= x <= 1
include_distogram
boolean
default:false

Whether to include distogram predictions in the response.

include_pae
boolean
default:false

Whether to include Predicted Aligned Error (PAE) matrix in the response.

include_pair_chains_iptm
boolean
default:false

Whether to include pair-chain IPTM predictions in the response.

all_atom_input
object | null

All atom input (protein, RNA, DNA, and ligand) to fold. If provided, performs all-atom folding and ignores the sequence and msa inputs.

include_embeddings
boolean
default:false

Whether to include sequence and pair embeddings in the response.

Response

Successful Response

model
enum<string>
required

You may have access to additional, private models as well. These will be visible on the Rate Limits page under the Developer Console

Available options:
esm3-open-2024-03,
esmfold2-fast-2026-05,
esmfold2-2026-05
created
string
required

ISO formatted date time

potential_sequence_of_concern
boolean
default:false

Indicate that the returned sequence may be of potential concerns.

warning_messages
string[] | null

Warning messages returned by FastAPI.

coordinates
(((number | null)[])[])[] | null

Coordinates of the N, CA, C atom sequence as a Nx37x3 array.

complex
object | null

Molecular complex with support for proteins, nucleic acids, and ligands.

plddt
number[] | null

Per position plddt predictions for a protein or molecular complex. Usually produced by structure decoder.

ptm
number | null

Predicted TM score of a protein or molecular complex. Usually produced by structure decoder.

interface_ptm
number | null

Interface TM score of a protein or molecular complex.

pae
number[][] | null

Predicted Aligned Error matrix for the protein or molecular complex. Shape is L x L. Values are rounded to 2 decimals (well within 0.5 A bin width)

pair_chains_iptm
number[][] | null

Pair-chain IPTM predictions for a protein. Shape is C x C, where C is the number of chains in the protein.

output_embedding_sequence
number[][] | null

Output embedding sequence from the model. Only present if requested.

output_embedding_pair_pooled
number[][] | null

Output embedding pair mean-pooled from the model. Only present if requested.

residue_index
integer[] | null

Residue indexes from the model. Only present if embeddings are requested.

entity_id
integer[] | null

Entity ids (e.g. chain ids) from the model. Only present if embeddings are requested.