Results API¶
The Results API provides access to result-explorer endpoints in the data platform.
from deeporigin.platform.client import DeepOriginClient
client = DeepOriginClient()
# Get docking poses for a protein
poses = client.results.get_poses(protein_id="08BSPN61NYVE3")
# Get binding pockets for a protein
pockets = client.results.get_pockets(protein_id="08BSPN61NYVE3")
# Get ABFE (Absolute Binding Free Energy) results
abfe = client.results.get_abfe_results(protein_id="08BSPN61NYVE3")
# Get results for a specific tool and protein
results = client.results.get(
tool_id="deeporigin.bulk-docking",
protein_id="08BSPN61NYVE3",
)
# Search ligands joined with tool results
results = client.results.with_ligands(
limit=10,
experiments=[{"toolId": "deeporigin.docking"}],
)
src.platform.results.Results
¶
Result-explorer API wrapper.
Provides access to result-explorer endpoints through the DeepOriginClient.
Functions¶
get
¶
get(
*,
filter_dict: dict[str, Any] | None = None,
compute_job_id: str | None = None,
limit: int | None = 1000,
select: list[str] | None = None
) -> dict
Low-level paginated search against the result-explorer API.
Prefer the higher-level wrappers (:meth:get_poses,
:meth:get_pockets) which expose friendly keyword arguments and
build the filter for you. Use this method directly only when you
need a filter shape that no wrapper covers yet.
Automatically paginates using cursor-based pagination until all matching records have been fetched.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
filter_dict
|
dict[str, Any] | None
|
Raw filter criteria forwarded to the result-explorer search endpoint. |
None
|
compute_job_id
|
str | None
|
Optional compute job ID to filter by. |
None
|
limit
|
int | None
|
Maximum total number of results to return across all pages. Defaults to 1000. |
1000
|
select
|
list[str] | None
|
List of fields to select. Defaults to
|
None
|
Returns:
| Type | Description |
|---|---|
dict
|
Dictionary with |
dict
|
from the final response. |
get_abfe_results
¶
get_abfe_results(
*,
protein_id: str | None = None,
ligand_id: str | list[str] | None = None,
compute_job_id: str | None = None,
tool_version: str | None = None,
limit: int | None = 1000,
select: list[str] | None = None
) -> dict
Get ABFE (Absolute Binding Free Energy) end-to-end results.
Convenience wrapper around :meth:get with
tool_key="deeporigin.abfe-end-to-end".
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
protein_id
|
str | None
|
Optional protein ID to filter by. |
None
|
ligand_id
|
str | list[str] | None
|
Optional ligand ID (or list of IDs) to filter by. |
None
|
compute_job_id
|
str | None
|
Optional compute job ID to filter by. |
None
|
tool_version
|
str | None
|
Optional tool version to filter by. |
None
|
limit
|
int | None
|
Maximum total number of results to return. Defaults to 1000. |
1000
|
select
|
list[str] | None
|
List of fields to select. Defaults to
|
None
|
Returns:
| Type | Description |
|---|---|
dict
|
Dictionary with |
dict
|
|
get_pockets
¶
get_pockets(
*,
id: str | None = None,
protein_id: str | None = None,
compute_job_id: str | None = None,
pocket_count: int | None = None,
pocket_min_size: int | None = None,
tool_version: str | None = None,
limit: int | None = 1000,
select: list[str] | None = None
) -> dict
Get binding pockets, optionally filtered by protein.
Convenience wrapper around :meth:get with
result_type="pocket".
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
id
|
str | None
|
Optional record ID to fetch a specific pocket. |
None
|
protein_id
|
str | None
|
Optional protein ID to filter by. |
None
|
compute_job_id
|
str | None
|
Optional compute job ID to filter by. |
None
|
pocket_count
|
int | None
|
Optional pocket count to filter by. |
None
|
pocket_min_size
|
int | None
|
Optional pocket min size to filter by. |
None
|
tool_version
|
str | None
|
Optional tool version to filter by. |
None
|
limit
|
int | None
|
Maximum total number of results to return. Defaults to 1000. |
1000
|
select
|
list[str] | None
|
List of fields to select. Defaults to
|
None
|
Returns:
| Type | Description |
|---|---|
dict
|
Dictionary with |
dict
|
from the final response. |
get_poses
¶
get_poses(
*,
protein_id: str | None = None,
ligand_id: str | list[str] | None = None,
compute_job_id: str | None = None,
tool_version: str | None = None,
limit: int | None = 100,
select: list[str] | None = None
) -> dict
Get docking poses, optionally filtered by protein.
Convenience wrapper around :meth:get with
result_type="pose".
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
protein_id
|
str | None
|
Optional protein ID to filter by. |
None
|
ligand_id
|
str | list[str] | None
|
Optional ligand ID (or list of IDs) to filter by. |
None
|
compute_job_id
|
str | None
|
Optional compute job ID to filter by. |
None
|
tool_version
|
str | None
|
Optional tool version to filter by. |
None
|
limit
|
int | None
|
Maximum total number of results to return. Defaults to 1000. |
100
|
select
|
list[str] | None
|
List of fields to select. Defaults to
|
None
|
Returns:
| Type | Description |
|---|---|
dict
|
Dictionary with |
dict
|
from the final response. |
get_prepared_systems
¶
get_prepared_systems(
*,
protein_id: str | None = None,
ligand1_id: str | None = None,
ligand2_id: str | None = None,
compute_job_id: str | None = None,
padding: int | None = None,
add_H_atoms: bool | None = None,
retain_waters: bool | None = None,
protonate_protein: bool | None = None,
tool_version: str | None = None,
limit: int | None = 1000,
select: list[str] | None = None
) -> dict
Get system-prep results, optionally filtered by inputs and options.
Convenience wrapper around :meth:get with
tool_key="deeporigin.system-prep". Optional args filter on the
tool result data (e.g. protein_id, ligand1_id, padding,
add_H_atoms, retain_waters, protonate_protein).
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
protein_id
|
str | None
|
Optional protein ID to filter by. |
None
|
ligand1_id
|
str | None
|
Optional ligand1 ID to filter by. |
None
|
ligand2_id
|
str | None
|
Optional ligand2 ID to filter by. |
None
|
compute_job_id
|
str | None
|
Optional compute job ID to filter by. |
None
|
padding
|
int | None
|
Optional padding value to filter by. |
None
|
add_H_atoms
|
bool | None
|
Optional add_H_atoms flag to filter by. |
None
|
retain_waters
|
bool | None
|
Optional retain_waters flag to filter by. |
None
|
protonate_protein
|
bool | None
|
Optional protonate_protein flag to filter by. |
None
|
tool_version
|
str | None
|
Optional tool version to filter by. |
None
|
limit
|
int | None
|
Maximum total number of results to return. Defaults to 1000. |
1000
|
select
|
list[str] | None
|
List of fields to select. Defaults to
|
None
|
Returns:
| Type | Description |
|---|---|
dict
|
Dictionary with |
dict
|
|
with_ligands
¶
with_ligands(
*,
cursor: str | None = None,
experiments: list[dict[str, str]] | None = None,
filter_dict: dict[str, Any] | None = None,
limit: int | None = None,
offset: int | None = None,
select: list[str] | None = None,
sort: dict[str, str] | None = None
) -> dict
Search ligands joined with tool results (wide pivot view).
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
cursor
|
str | None
|
Cursor for pagination. |
None
|
experiments
|
list[dict[str, str]] | None
|
List of experiment filters, each containing toolId and optionally toolVersion. |
None
|
filter_dict
|
dict[str, Any] | None
|
Additional filter criteria as a dictionary. |
None
|
limit
|
int | None
|
Maximum number of results to return. Defaults to 100. |
None
|
offset
|
int | None
|
Number of results to skip. |
None
|
select
|
list[str] | None
|
List of fields to select in the response. |
None
|
sort
|
dict[str, str] | None
|
Dictionary mapping field names to sort order ("asc" or "desc"). |
None
|
Returns:
| Type | Description |
|---|---|
dict
|
Dictionary containing the search results. |