model
Models of 3D Beacons API HUB.
Generated with
wget https://www.ebi.ac.uk/pdbe/pdbe-kb/3dbeacons/api/v2/openapi.json
uvx --from=datamodel-code-generator datamodel-codegen --output-model-type dataclasses.dataclass --enum-field-as-literal all --disable-future-imports --use-annotated --use-field-description --openapi-scopes schemas parameters paths --include-path-parameters --input ./openapi.json --output model.py
After generation changes:
- ruff format
- ruff check --fix
- ruff ignores
- extract Provider type and search_structure_provider_choices set
Also document UniprotSummary and its children:
- Use google style docstrings using
Attributes:section - as mkdocstrings does not understand docstring per property
- make llm do it with following prompts:
and
Document the children of UniprotSummary and AccessionListRequest. If class has attributes with their own docstrings move them to the `Attributes:` section of the classes docstring. Do not add types in the docstring as they are already defined in the code.Add docstring to types that do not have any. Convert name of type from CamelCase to Camel case as docstring.
Provider = Literal['pdbe', 'ped', 'swissmodel', 'alphafold', 'sasbdb', 'alphafill', 'hegelab', 'modelarchive', 'isoformio', 'levylab']
module-attribute
¶
Provider
search_structure_provider_choices = set(get_args(Provider))
module-attribute
¶
All providers
AlignmentDifference = float
¶
Fraction of alignment difference (0 to 1)
AppSequenceSchemaConfidenceType = Literal['pLDDT', 'QMEANDisCo', 'ipTM+pTM']
¶
Confidence type enumeration
AppSequenceSchemaEntityPolyType = Literal['CYCLIC-PSEUDO-PEPTIDE', 'PEPTIDE NUCLEIC ACID', 'POLYDEOXYRIBONUCLEOTIDE', 'POLYDEOXYRIBONUCLEOTIDE/POLYRIBONUCLEOTIDE HYBRID', 'POLYPEPTIDE(D)', 'POLYPEPTIDE(L)', 'POLYRIBONUCLEOTIDE', 'OTHER']
¶
Entity poly type enumeration
AppSequenceSchemaEntityType = Literal['BRANCHED', 'MACROLIDE', 'NON-POLYMER', 'POLYMER', 'WATER']
¶
Entity type enumeration
AppSequenceSchemaExperimentalMethod = Literal['ELECTRON CRYSTALLOGRAPHY', 'ELECTRON MICROSCOPY', 'EPR', 'FIBER DIFFRACTION', 'FLUORESCENCE TRANSFER', 'INFRARED SPECTROSCOPY', 'NEUTRON DIFFRACTION', 'X-RAY POWDER DIFFRACTION', 'SOLID-STATE NMR', 'SOLUTION NMR', 'X-RAY SOLUTION SCATTERING', 'THEORETICAL MODEL', 'X-RAY DIFFRACTION', 'HYBRID']
¶
Experimental method enumeration
AppSequenceSchemaIdentifierCategory = Literal['UNIPROT', 'RFAM', 'CCD', 'SMILES', 'INCHI', 'INCHIKEY']
¶
Identifier category enumeration
AppSequenceSchemaModelCategory = Literal['EXPERIMENTALLY DETERMINED', 'TEMPLATE-BASED', 'AB-INITIO', 'CONFORMATIONAL ENSEMBLE']
¶
Model category enumeration
AppSequenceSchemaModelFormat = Literal['PDB', 'MMCIF', 'BCIF']
¶
Model format enumeration
AppSequenceSchemaModelType = Literal['ATOMIC', 'DUMMY', 'MIX']
¶
Model type enumeration
AppSequenceSchemaOligomericState = Literal['MONOMER', 'HOMODIMER', 'HETERODIMER', 'HOMO-OLIGOMER', 'HETERO-OLIGOMER']
¶
Oligomeric state enumeration
AppUniprotSchemaConfidenceType = Literal['pLDDT', 'QMEANDisCo', 'ipTM+pTM']
¶
App Uniprot Schema Confidence Type
AppUniprotSchemaEntityPolyType = Literal['CYCLIC-PSEUDO-PEPTIDE', 'PEPTIDE NUCLEIC ACID', 'POLYDEOXYRIBONUCLEOTIDE', 'POLYDEOXYRIBONUCLEOTIDE/POLYRIBONUCLEOTIDE HYBRID', 'POLYPEPTIDE(D)', 'POLYPEPTIDE(L)', 'POLYRIBONUCLEOTIDE', 'OTHER']
¶
App Uniprot Schema Entity Poly Type
AppUniprotSchemaEntityType = Literal['BRANCHED', 'MACROLIDE', 'NON-POLYMER', 'POLYMER', 'WATER']
¶
App Uniprot Schema Entity Type
AppUniprotSchemaExperimentalMethod = Literal['ELECTRON CRYSTALLOGRAPHY', 'ELECTRON MICROSCOPY', 'EPR', 'FIBER DIFFRACTION', 'FLUORESCENCE TRANSFER', 'INFRARED SPECTROSCOPY', 'NEUTRON DIFFRACTION', 'X-RAY POWDER DIFFRACTION', 'SOLID-STATE NMR', 'SOLUTION NMR', 'X-RAY SOLUTION SCATTERING', 'THEORETICAL MODEL', 'X-RAY DIFFRACTION', 'HYBRID']
¶
App Uniprot Schema Experimental Method
AppUniprotSchemaIdentifierCategory = Literal['UNIPROT', 'RFAM', 'CCD', 'SMILES', 'INCHI', 'INCHIKEY']
¶
App Uniprot Schema Identifier Category
AppUniprotSchemaModelCategory = Literal['EXPERIMENTALLY DETERMINED', 'TEMPLATE-BASED', 'AB-INITIO', 'CONFORMATIONAL ENSEMBLE']
¶
App Uniprot Schema Model Category
AppUniprotSchemaModelFormat = Literal['PDB', 'MMCIF', 'BCIF']
¶
App Uniprot Schema Model Format
AppUniprotSchemaModelType = Literal['ATOMIC', 'DUMMY', 'MIX']
¶
App Uniprot Schema Model Type
AppUniprotSchemaOligomericState = Literal['MONOMER', 'HOMODIMER', 'HETERODIMER', 'HOMO-OLIGOMER', 'HETERO-OLIGOMER']
¶
App Uniprot Schema Oligomeric State
Chains = list[Chain]
¶
Chains
ChecksumType = Literal['CRC64', 'MD5']
¶
Type of checksum enumeration
EnsembleSampleFormat = Literal['PDB', 'MMCIF', 'BCIF']
¶
Ensemble Sample Format
Evidence = Literal['EXPERIMENTALLY DETERMINED', 'COMPUTATIONAL/PREDICTED', 'FROM LITERATURE']
¶
Evidence
ExperimentalMethod1 = Literal['ELECTRON CRYSTALLOGRAPHY', 'ELECTRON MICROSCOPY', 'EPR', 'FIBER DIFFRACTION', 'FLUORESCENCE TRANSFER', 'INFRARED SPECTROSCOPY', 'NEUTRON DIFFRACTION', 'POWDER DIFFRACTION', 'SOLID-STATE NMR', 'SOLUTION NMR', 'SOLUTION SCATTERING', 'THEORETICAL MODEL', 'X-RAY DIFFRACTION', 'HYBRID']
¶
Experimental Method 1
FeatureType = Literal['CARBOHYD', 'DOMAIN', 'ACT_SITE', 'METAL', 'BINDING', 'NON_STD', 'MOD_RES', 'DISULFID', 'MUTAGEN', 'HELIX', 'STRAND', 'DISORDERED', 'INTERFACE', 'CHANNEL']
¶
Feature Type
HealthResponse = list[HealthStatus]
¶
Response model for /health endpoint - returns array of status objects
HealthStatusEnum = Literal['pass', 'warn', 'fail']
¶
Health status enumeration based on the OpenAPI spec
Resolution = float
¶
Resolution of the model in Angstrom
SequenceIdType = Literal['sequence', 'crc64', 'md5']
¶
Sequence Id Type
SequenceResultGetResponse = list[SearchAccession]
¶
Sequence Result Get Response
UniprotSummaryPostResponse = list[UniprotSummary]
¶
Uniprot Summary Post Response
AccessionListRequest
dataclass
¶
Annotation
dataclass
¶
AnnotationsUniprotQualifierJsonGetParameters
dataclass
¶
AppSequenceSchemaEntity
dataclass
¶
chain_ids
instance-attribute
¶
List of chain identifiers of the molecule
description
instance-attribute
¶
Textual label of the molecule
entity_poly_type = None
class-attribute
instance-attribute
¶
Type of the molecular entity polymer
entity_type
instance-attribute
¶
Type of the molecular entity
identifier = None
class-attribute
instance-attribute
¶
Identifier of the molecule
identifier_category = None
class-attribute
instance-attribute
¶
Category of the identifier
AppSequenceSchemaSummaryItems
dataclass
¶
confidence_avg_local_score = None
class-attribute
instance-attribute
¶
Average of confidence measures
confidence_type = None
class-attribute
instance-attribute
¶
Type of confidence measure
confidence_version = None
class-attribute
instance-attribute
¶
Version of confidence measure software
coverage
instance-attribute
¶
Fraction of UniProt sequence covered by the model
created
instance-attribute
¶
Date of release of model generation in the format of YYYY-MM-DD
ensemble_sample_format = None
class-attribute
instance-attribute
¶
File format of the sample coordinates
ensemble_sample_url = None
class-attribute
instance-attribute
¶
URL of a sample of conformations from ensemble
entities
instance-attribute
¶
List of molecular entities in the model
experimental_method = None
class-attribute
instance-attribute
¶
Experimental method used to determine structure
model_category
instance-attribute
¶
Category of the model
model_format
instance-attribute
¶
File format of the coordinates
model_identifier
instance-attribute
¶
Identifier of the model, such as PDB id
model_page_url = None
class-attribute
instance-attribute
¶
URL of a web page showing the model
model_type = None
class-attribute
instance-attribute
¶
Defines if coordinates are atomic-level or contain dummy atoms
model_url
instance-attribute
¶
URL of the model coordinates
number_of_conformers = None
class-attribute
instance-attribute
¶
Number of conformers in a conformational ensemble
oligomeric_state = None
class-attribute
instance-attribute
¶
Oligomeric state of the model
oligomeric_state_confidence = None
class-attribute
instance-attribute
¶
Confidence in oligomeric state
preferred_assembly_id = None
class-attribute
instance-attribute
¶
Identifier of preferred assembly
provider
instance-attribute
¶
Name of the model provider
resolution = None
class-attribute
instance-attribute
¶
Resolution of the model in Angstrom
sequence_identity
instance-attribute
¶
Sequence identity of model to UniProt sequence
AppUniprotSchemaEntity
dataclass
¶
Molecular entity in a UniProt structure model.
Attributes:
| Name | Type | Description |
|---|---|---|
entity_type |
AppUniprotSchemaEntityType
|
Type of the molecular entity; similar to |
description |
str
|
Textual label of the molecule. |
chain_ids |
list[str]
|
List of label_asym identifiers ( |
entity_poly_type |
AppUniprotSchemaEntityPolyType | None
|
Type of the molecular entity polymer; similar to |
identifier |
str | None
|
Identifier of the molecule. |
identifier_category |
AppUniprotSchemaIdentifierCategory | None
|
Category of the identifier. |
AppUniprotSchemaSummaryItems
dataclass
¶
Summary information for a UniProt-associated structure model.
Attributes:
| Name | Type | Description |
|---|---|---|
model_identifier |
str
|
Identifier of the model, such as PDB ID. |
model_category |
AppUniprotSchemaModelCategory
|
Category of the model. |
model_url |
str
|
URL of the model coordinates. |
model_format |
AppUniprotSchemaModelFormat
|
File format of the coordinates. |
provider |
str
|
Name of the model provider. |
created |
str
|
Date of model release in |
sequence_identity |
float
|
Sequence identity of the model to the UniProt sequence in range |
uniprot_start |
int
|
1-indexed first residue of the model in UniProt numbering. |
uniprot_end |
int
|
1-indexed last residue of the model in UniProt numbering. |
coverage |
float
|
Fraction of UniProt sequence covered by the model in range |
entities |
list[AppUniprotSchemaEntity]
|
List of molecular entities in the model. |
model_type |
AppUniprotSchemaModelType | None
|
Whether coordinates are atomic, dummy atoms, or mixed. |
model_page_url |
str | None
|
Provider web page URL for the model. |
number_of_conformers |
float | None
|
Number of conformers in a conformational ensemble. |
ensemble_sample_url |
str | None
|
URL of a sample of conformations from an ensemble. |
ensemble_sample_format |
EnsembleSampleFormat | None
|
File format of the sample coordinates. |
experimental_method |
AppUniprotSchemaExperimentalMethod | None
|
Experimental method used to determine the structure. |
resolution |
float | None
|
Resolution of the model in Angstrom. |
confidence_type |
AppUniprotSchemaConfidenceType | None
|
Type of confidence measure. |
confidence_version |
str | None
|
Version of the confidence measure software. |
confidence_avg_local_score |
float | None
|
Average confidence score. |
oligomeric_state |
AppUniprotSchemaOligomericState | None
|
Oligomeric state of the model. |
oligomeric_state_confidence |
float | None
|
Confidence in the oligomeric state assignment. |
preferred_assembly_id |
str | None
|
Identifier of the preferred assembly in the model. |
EnsemblSummary
dataclass
¶
EnsemblSummaryQualifierJsonGetParameters
dataclass
¶
qualifier
instance-attribute
¶
Ensembl identifier.
EnsemblTranscript
dataclass
¶
Entry
dataclass
¶
FeatureItem
dataclass
¶
description
instance-attribute
¶
Description/Label of the annotation
evidence = None
class-attribute
instance-attribute
¶
Evidence category of the annotation
residues = None
class-attribute
instance-attribute
¶
An array of residue indices
source_name = None
class-attribute
instance-attribute
¶
Name of the source of the annotations, i.e. where is the data from
source_url = None
class-attribute
instance-attribute
¶
URL of the source of the annotation, i.e. where to find more data
type
instance-attribute
¶
Type of the annotation
HealthStatus
dataclass
¶
beacons_api_version
instance-attribute
¶
The version of the 3DBeacons API
output = None
class-attribute
instance-attribute
¶
Raw error output, in case of 'fail' or 'warn' states
service_id
instance-attribute
¶
The identifier of the service, corresponds to the provider ID in the registry
status
instance-attribute
¶
The status of the service
Overview
dataclass
¶
Overview of a UniProt-associated structure.
Attributes:
| Name | Type | Description |
|---|---|---|
summary |
AppUniprotSchemaSummaryItems
|
Summary information for the structure. |
Region
dataclass
¶
annotation_value = None
class-attribute
instance-attribute
¶
The value of the annotation
end
instance-attribute
¶
The last position of the annotation
start
instance-attribute
¶
The first position of the annotation
unit = None
class-attribute
instance-attribute
¶
The unit of the annotation value, if applicable
Residue
dataclass
¶
Segment
dataclass
¶
Seqres
dataclass
¶
SequenceSummary
dataclass
¶
SequenceSummaryGetParameters
dataclass
¶
Template
dataclass
¶
chain_id
instance-attribute
¶
Identifier of the chain of the template; this is label_asym_id in mmCIF
experimental_method
instance-attribute
¶
Experimental method used to determine the template
last_updated
instance-attribute
¶
Date of release of the last update in the format of YYYY-MM-DD
preferred_assembly_id = None
class-attribute
instance-attribute
¶
Identifier of the preferred assembly of the template
provider
instance-attribute
¶
Provider of the template
resolution
instance-attribute
¶
Resolution of the template, in Angstrom
template_id
instance-attribute
¶
Identifier of the template
template_sequence_identity
instance-attribute
¶
Sequence identity of the template with the UniProt accession, in the range of [0,1]
Uniprot
dataclass
¶
UniprotEntry
dataclass
¶
UniProt entry
Attributes:
| Name | Type | Description |
|---|---|---|
ac |
str
|
UniProt accession. |
id |
str | None
|
UniProt identifier. |
uniprot_checksum |
str | None
|
CRC64 checksum of the UniProt sequence. |
sequence_length |
int | None
|
Length of the UniProt sequence. |
segment_start |
int | None
|
1-indexed first residue of the UniProt sequence segment. |
segment_end |
int | None
|
1-indexed last residue of the UniProt sequence segment. |
description |
str | None
|
Description of the UniProt entry. |
UniprotQualifierJsonGetParameters
dataclass
¶
qualifier
instance-attribute
¶
UniProtKB accession number (AC), entry name (ID) or CRC64 checksum of the UniProt sequence
range = None
class-attribute
instance-attribute
¶
Specify a UniProt sequence residue range
template = None
class-attribute
instance-attribute
¶
Template is 4 letter PDB code, or 4 letter code with assembly ID and chain for SMTL entries
uniprot_checksum = None
class-attribute
instance-attribute
¶
CRC64 checksum of the UniProt sequence
UniprotSummary
dataclass
¶
Uniprot summary
Attributes:
| Name | Type | Description |
|---|---|---|
uniprot_entry |
UniprotEntry | None
|
Uniprot entry |
structures |
list[Overview] | None
|
Structures |
UniprotSummaryQualifierJsonGetParameters
dataclass
¶
exclude_provider = None
class-attribute
instance-attribute
¶
Provider to exclude.
qualifier
instance-attribute
¶
UniProtKB accession number (AC), entry name (ID) or CRC64 checksum of the UniProt sequence
range = None
class-attribute
instance-attribute
¶
Specify a UniProt sequence residue range
template = None
class-attribute
instance-attribute
¶
Template is 4 letter PDB code, or 4 letter code with assembly ID and chain for SMTL entries
uniprot_checksum = None
class-attribute
instance-attribute
¶
CRC64 checksum of the UniProt sequence