Unofficial Python SDK for Amazon Bio Discovery — AI-powered antibody design
Project description
biodiscovery-python
The unofficial Python SDK for Amazon Bio Discovery.
Design antibodies with AI. Programmatically.
pip install biodiscovery
⚠️ Unofficial. This package is not affiliated with or endorsed by Amazon Web Services. Built by Nodes Bio, Inc. — AI Synthesis for Science and Medicine.
Quick Start
from biodiscovery import BioDiscoveryClient
client = BioDiscoveryClient(
application_id="your-app-id",
access_key_id="AKIA...",
secret_access_key="...",
session_token="...",
)
# Get a project
project = client.get_project("f29a1f5a33504ca885d0bea53d3570ba")
print(project.name, project.status)
# Get experiment results
experiment = client.get_experiment(
project_id=project.project_id,
experiment_id="f4ef6a1e01c84f4ea6bf29bf2028e5e5",
)
print(f"Cost: {experiment.estimated_experiment_units} EU")
print(f"Status: {experiment.status}")
# Inspect a module's IO spec
module = client.get_module("rfantibody")
print(module.description)
print(module.io_spec.inputs)
# Get a recipe DAG
recipe = client.get_recipe("8f2e9b3c7d154aa6b2c8f1e9d0a3b5c4")
for step in recipe.steps:
print(f" {step.step_name} → {step.module_id}")
# List wet lab orders
orders = client.list_wetlab_orders(project.project_id, experiment.experiment_id)
Authentication
Amazon Bio Discovery uses AWS SigV4 signing with temporary credentials obtained via Identity Center SSO. The SDK handles signing automatically — you provide the credentials from your Bio Discovery session.
To get your credentials:
- Log in to biodiscovery.aws.com
- Open browser DevTools → Network tab
- Find the
/getcredentialsresponse - Copy
applicationId,credentials.accessKeyId,credentials.secretAccessKey,credentials.sessionToken
API Coverage (v0.2.0 — 55 methods)
Projects
list_projects · get_project · create_project · update_project · delete_project
Experiments
list_experiments · get_experiment · create_experiment · update_experiment · delete_experiment · start_experiment · predict_experiment_configuration
Results
list_results · get_result_data · get_result_metadata
Jobs
list_jobs · get_job · create_job · start_job · update_job · delete_job
Modules & Recipes
list_hosted_modules · get_module · list_hosted_recipes · get_recipe · list_custom_recipes · get_custom_recipe · create_custom_recipe · update_custom_recipe · delete_custom_recipe · start_custom_recipe_publish
Wet Lab (CRO Integration)
list_wetlab_providers · list_wetlab_orders · get_wetlab_order · get_wetlab_order_estimates · create_wetlab_order · cancel_wetlab_order · delete_wetlab_order · export_wetlab_order_results
Datasets & Files
list_datasets · get_dataset_metadata · import_dataset · export_dataset · update_dataset · start_dataset_multipart_upload · resume_dataset_multipart_upload · complete_dataset_multipart_upload · get_file_metadata · export_file · delete_file
Sharing & Permissions
list_resource_permissions · create_resource_permission · update_resource_permission · delete_resource_permission · update_principal_permissions · list_principals
Identity Center
list_idc_users · list_idc_groups · associate_idc_principal · disassociate_idc_principal
Account
get_user_details · list_feature_flags · get_usage
Module Catalog
The SDK includes a reference catalog of known Bio Discovery modules:
from biodiscovery.catalog import MODULES, RECIPES, CRO_PARTNERS
# All 40+ hosted bioFMs
for module_id, description in MODULES.items():
print(f"{module_id}: {description}")
# Known recipe IDs
print(RECIPES["de_novo_design"])
# CRO partners
for partner, info in CRO_PARTNERS.items():
print(f"{partner}: {info}")
Models
All API responses are parsed into typed Pydantic models:
Project— project metadata and statusExperiment— experiment config, parameters, EU cost, timingModule— bioFM module with parsed IO specificationRecipe— workflow DAG with steps and dependency pipingWetLabOrder— CRO order status and assay details
Before You Design: Understand the Biology
Amazon Bio Discovery designs antibodies. But which target should you design against?
Jarvis sends your biology question to five AI models simultaneously and returns a consensus answer with a confidence score. Use it to evaluate targets, review literature, and build confidence before you spend Experiment Units.
MedMap turns plain-English biology questions into interactive pathway maps. Visualize the disease mechanism, identify druggable nodes, then take those targets into Bio Discovery.
Research → Visualize → Design → Test. That's the workflow.
Contributing
Contributions welcome:
- Async client (
httpx.AsyncClient) - CLI tool
- Better credential management (browser cookie extraction, SSO flow)
- Response model coverage for newer endpoints
- Integration examples and notebooks
License
Apache 2.0 — see LICENSE.
Built by Nodes Bio, Inc. — AI Synthesis for Science and Medicine.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file biodiscovery-0.2.0.tar.gz.
File metadata
- Download URL: biodiscovery-0.2.0.tar.gz
- Upload date:
- Size: 8.9 kB
- Tags: Source
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
29bc462d320c35bdf13ac9db6a0c4b2de19a1cbcc6ea2050816f093ac1b97dfe
|
|
| MD5 |
b7cb35c23dc8bbe00ea3fee96868fb71
|
|
| BLAKE2b-256 |
8ff745adc721d7c4fb43e490f91df78b06ad24ef19f8101ecfe219e2873a9600
|
Provenance
The following attestation bundles were made for biodiscovery-0.2.0.tar.gz:
Publisher:
publish.yml on jmg421/biodiscovery-python
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
biodiscovery-0.2.0.tar.gz -
Subject digest:
29bc462d320c35bdf13ac9db6a0c4b2de19a1cbcc6ea2050816f093ac1b97dfe - Sigstore transparency entry: 1330951372
- Sigstore integration time:
-
Permalink:
jmg421/biodiscovery-python@070b78415f15505bf09b74182235c6cc947f617b -
Branch / Tag:
refs/tags/v0.2.0 - Owner: https://github.com/jmg421
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
publish.yml@070b78415f15505bf09b74182235c6cc947f617b -
Trigger Event:
release
-
Statement type:
File details
Details for the file biodiscovery-0.2.0-py3-none-any.whl.
File metadata
- Download URL: biodiscovery-0.2.0-py3-none-any.whl
- Upload date:
- Size: 10.6 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
8b279f740b526aeb19915912b52901009b2c350e186646a396d1cb3b65d211e9
|
|
| MD5 |
3fa79d0850ad65b0f94332b74fcad162
|
|
| BLAKE2b-256 |
387514383f10c1b6577ac857d9e8182630a32af5db70abe944ee270c1daddf55
|
Provenance
The following attestation bundles were made for biodiscovery-0.2.0-py3-none-any.whl:
Publisher:
publish.yml on jmg421/biodiscovery-python
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
biodiscovery-0.2.0-py3-none-any.whl -
Subject digest:
8b279f740b526aeb19915912b52901009b2c350e186646a396d1cb3b65d211e9 - Sigstore transparency entry: 1330951448
- Sigstore integration time:
-
Permalink:
jmg421/biodiscovery-python@070b78415f15505bf09b74182235c6cc947f617b -
Branch / Tag:
refs/tags/v0.2.0 - Owner: https://github.com/jmg421
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
publish.yml@070b78415f15505bf09b74182235c6cc947f617b -
Trigger Event:
release
-
Statement type: