API Documentation¶
- class rcsbapi.model.ModelQuery(encoding: Optional[Literal['cif', 'bcif', 'sdf', 'mol', 'mol2']] = 'cif', file_directory: Optional[str] = None, download: Optional[bool] = False, compress_gzip: Optional[bool] = False, max_retries: Optional[int] = None, retry_backoff: Optional[int] = None)¶
Class for querying model data from the RCSB ModelServer.
Supports various query types such as full structure retrieval, ligand queries, atom-level queries, and contextual residue or ligand information. Handles output formats, optional file saving, and gzip compression.
- __init__(encoding: Optional[Literal['cif', 'bcif', 'sdf', 'mol', 'mol2']] = 'cif', file_directory: Optional[str] = None, download: Optional[bool] = False, compress_gzip: Optional[bool] = False, max_retries: Optional[int] = None, retry_backoff: Optional[int] = None)¶
Query object for Model Server API requests.
- Parameters
encoding (str, optional) – Default encoding format to use for all requests. Defaults to “cif”.
file_directory (str, optional) – Default file directory to use for all requests. Defaults to current working directory.
download (bool, optional) – Default download flag to use for all requests. Defaults to False.
compress_gzip (bool, optional) – Default setting for GZIP compression to use for all requests. Defaults to False.
max_retries (int, optional) – Default number of max retries to perform for all requests. Defaults to config.MAX_RETRIES.
retry_backoff (int, optional) – Default retry backoff delay to wait between failed requets. Defaults to config.RETRY_BACKOFF.
- get_assembly(entry_id: str, name: Optional[str] = '1', model_nums: Optional[List[int]] = None, encoding: Optional[Literal['cif', 'bcif']] = None, copy_all_categories: Optional[bool] = False, data_source: Optional[str] = None, transform: Optional[str] = None, download: Optional[bool] = None, filename: Optional[str] = None, file_directory: Optional[str] = None, compress_gzip: Optional[bool] = None)¶
Fetches information about molecular assemblies.
- get_atoms(entry_id: str, label_entity_id: Optional[str] = None, label_asym_id: Optional[str] = None, auth_asym_id: Optional[str] = None, label_comp_id: Optional[str] = None, auth_comp_id: Optional[str] = None, label_seq_id: Optional[int] = None, auth_seq_id: Optional[int] = None, pdbx_PDB_ins_code: Optional[str] = None, label_atom_id: Optional[str] = None, auth_atom_id: Optional[str] = None, type_symbol: Optional[str] = None, model_nums: Optional[List[int]] = None, encoding: Optional[Literal['cif', 'bcif']] = None, copy_all_categories: Optional[bool] = False, data_source: Optional[str] = None, transform: Optional[str] = None, download: Optional[bool] = None, filename: Optional[str] = None, file_directory: Optional[str] = None, compress_gzip: Optional[bool] = None)¶
Fetches atom-level details.
- get_full_structure(entry_id: str, model_nums: Optional[List[int]] = None, encoding: Optional[Literal['cif', 'bcif']] = None, copy_all_categories: Optional[bool] = False, data_source: Optional[str] = None, transform: Optional[str] = None, download: Optional[bool] = None, filename: Optional[str] = None, file_directory: Optional[str] = None, compress_gzip: Optional[bool] = None)¶
Retrieve the full atomic model of a specified entry from the ModelServer.
- Parameters
entry_id (str) – The PDB ID of the structure to retrieve.
model_nums (Optional[List[int]]) – List of model numbers to include (if multiple models exist).
encoding (Optional[Literal["cif", "bcif"]]) – Format of the returned file (default is “cif”).
copy_all_categories (Optional[bool]) – If True, copies all data categories; otherwise, uses minimal.
data_source (Optional[str]) – Optional data source name.
transform (Optional[str]) – Transformation matrix to apply to coordinates.
download (Optional[bool]) – If True, downloads and saves the file to disk.
filename (Optional[str]) – Custom filename to use if downloading.
file_directory (Optional[str]) – Directory where file will be saved.
compress_gzip (Optional[bool]) – If True, compress the output file using GZIP.
- get_ligand(entry_id: str, label_entity_id: Optional[str] = None, label_asym_id: Optional[str] = None, auth_asym_id: Optional[str] = None, label_comp_id: Optional[str] = None, auth_comp_id: Optional[str] = None, label_seq_id: Optional[int] = None, auth_seq_id: Optional[int] = None, pdbx_PDB_ins_code: Optional[str] = None, label_atom_id: Optional[str] = None, auth_atom_id: Optional[str] = None, type_symbol: Optional[str] = None, model_nums: Optional[List[int]] = None, encoding: Optional[Literal['cif', 'bcif', 'sdf', 'mol', 'mol2']] = None, copy_all_categories: Optional[bool] = False, data_source: Optional[str] = None, transform: Optional[str] = None, download: Optional[bool] = None, filename: Optional[str] = None, file_directory: Optional[str] = None, compress_gzip: Optional[bool] = None)¶
Retrieves ligand-related information, including components and interactions.
- Parameters
entry_id (str) – The PDB ID of the structure.
label_entity_id (str, optional) – Entity identifier using label nomenclature.
label_asym_id (str, optional) – Asymmetric unit ID using label nomenclature.
auth_asym_id (str, optional) – Asymmetric unit ID using author-provided nomenclature.
label_comp_id (str, optional) – Ligand component ID using label nomenclature.
auth_comp_id (str, optional) – Ligand component ID using author nomenclature.
label_seq_id (int, optional) – Residue sequence number (label nomenclature).
auth_seq_id (int, optional) – Residue sequence number (author nomenclature).
pdbx_PDB_ins_code (str, optional) – Insertion code for distinguishing alternate residue IDs.
label_atom_id (str, optional) – Atom name using label nomenclature.
auth_atom_id (str, optional) – Atom name using author nomenclature.
type_symbol (str, optional) – Atomic element symbol (e.g., “C”, “N”, “O”).
model_nums (List[int], optional) – Specific model numbers to retrieve.
encoding (str, optional) – Output format, one of: “cif”, “sdf”, “mol”, “mol2”, “bcif”.
copy_all_categories (bool, optional) – Whether to include all data categories in the output.
data_source (str, optional) – Source of the structure data.
transform (str, optional) – Transformation ID for biological assemblies or specific views.
download (bool, optional) – If True, save the result to disk.
filename (str, optional) – Custom filename for saving the output.
file_directory (str, optional) – Directory path to save the output file.
compress_gzip (bool, optional) – If True, compress the file using gzip.
- get_multiple_structures(entry_ids: List[str], query_type: Literal['full', 'ligand', 'atoms', 'residue_interaction', 'residue_surroundings', 'surrounding_ligands', 'symmetry_mates', 'assembly'], **kwargs)¶
Fetch multiple structures at once based on a list of entry_ids.
- Parameters
entry_ids (List[str]) – List of structure IDs to query.
query_type (str) – The type of query to execute (e.g., “full”, “ligand”, etc.).
**kwargs – Additional query parameters to pass to the API.
- Returns
A dictionary with entry IDs as keys and the corresponding responses as values.
- Return type
dict
- get_residue_interaction(entry_id: str, label_entity_id: Optional[str] = None, label_asym_id: Optional[str] = None, auth_asym_id: Optional[str] = None, label_comp_id: Optional[str] = None, auth_comp_id: Optional[str] = None, label_seq_id: Optional[int] = None, auth_seq_id: Optional[int] = None, pdbx_PDB_ins_code: Optional[str] = None, label_atom_id: Optional[str] = None, auth_atom_id: Optional[str] = None, type_symbol: Optional[str] = None, radius: Optional[float] = 5.0, assembly_name: Optional[str] = None, model_nums: Optional[List[int]] = None, encoding: Optional[Literal['cif', 'bcif']] = None, copy_all_categories: Optional[bool] = False, data_source: Optional[str] = None, transform: Optional[str] = None, download: Optional[bool] = None, filename: Optional[str] = None, file_directory: Optional[str] = None, compress_gzip: Optional[bool] = None)¶
Retrieves data on interactions between residues.
- get_residue_surroundings(entry_id: str, label_entity_id: Optional[str] = None, label_asym_id: Optional[str] = None, auth_asym_id: Optional[str] = None, label_comp_id: Optional[str] = None, auth_comp_id: Optional[str] = None, label_seq_id: Optional[int] = None, auth_seq_id: Optional[int] = None, pdbx_PDB_ins_code: Optional[str] = None, label_atom_id: Optional[str] = None, auth_atom_id: Optional[str] = None, type_symbol: Optional[str] = None, radius: Optional[float] = 5.0, assembly_name: Optional[str] = None, model_nums: Optional[List[int]] = None, encoding: Optional[Literal['cif', 'bcif']] = None, copy_all_categories: Optional[bool] = False, data_source: Optional[str] = None, transform: Optional[str] = None, download: Optional[bool] = None, filename: Optional[str] = None, file_directory: Optional[str] = None, compress_gzip: Optional[bool] = None)¶
Provides information about residues surrounding a given structure.
- get_surrounding_ligands(entry_id: str, label_entity_id: Optional[str] = None, label_asym_id: Optional[str] = None, auth_asym_id: Optional[str] = None, label_comp_id: Optional[str] = None, auth_comp_id: Optional[str] = None, label_seq_id: Optional[int] = None, auth_seq_id: Optional[int] = None, pdbx_PDB_ins_code: Optional[str] = None, label_atom_id: Optional[str] = None, auth_atom_id: Optional[str] = None, type_symbol: Optional[str] = None, omit_water: Optional[bool] = False, radius: Optional[float] = 5.0, assembly_name: Optional[str] = None, model_nums: Optional[List[int]] = None, encoding: Optional[Literal['cif', 'bcif']] = None, copy_all_categories: Optional[bool] = False, data_source: Optional[str] = None, transform: Optional[str] = None, download: Optional[bool] = None, filename: Optional[str] = None, file_directory: Optional[str] = None, compress_gzip: Optional[bool] = None)¶
Provides information about ligands surrounding a given structure.
- get_symmetry_mates(entry_id: str, radius: Optional[float] = 5.0, model_nums: Optional[List[int]] = None, encoding: Optional[Literal['cif', 'bcif']] = None, copy_all_categories: Optional[bool] = False, data_source: Optional[str] = None, transform: Optional[str] = None, download: Optional[bool] = None, filename: Optional[str] = None, file_directory: Optional[str] = None, compress_gzip: Optional[bool] = None)¶
Retrieves symmetry-related data.