← API reference
Antibody design · Protein Design · Binder design

Germinal API

Design de novo antibodies against a chosen epitope on a target structure.

Runs the Germinal pipeline, which hallucinates VHH or scFv binders through AlphaFold-Multimer under antibody language model guidance and then filters the trajectories on its structural and sequence criteria. Germinal's own configuration is a set of named Hydra profiles rather than a flat set of flags; this writes a target profile for the submitted structure and selects the matching run and filter profiles for the chosen binder format.

Request body

Fields

The same names the web form posts. See the field type table for what each kind means over HTTP.

Name Type Required Default Description
job_name string text no germinal-demo Job name
target_pdb string file yes HEADER PASTE A TARGET ANTIGEN PDB HERE Target antigen PDB file types .pdb,.ent,.cif.
target_chain string text yes A Target chain up to 4 characters.
target_hotspots string text yes A56,A57,A58 Epitope hotspots Comma-separated target residues that define the epitope, for example A56,A57,A58.
binder_format string select no vhh Binder format One of: vhh, scfv.
max_trajectories number number no 10 Trajectories to run Hallucination trajectories attempted; most are discarded by the filters. minimum 1, maximum 10000.
max_passing_designs number number no 2 Designs to keep The run stops once this many designs have passed every filter. minimum 1, maximum 1000.
Example

A request that runs

These are the defaults, exactly as the web form would post them.

curl -X POST https://www.athanortools.com/api/germinal/ \
  -H 'Content-Type: application/json' \
  -d '{
  "job_name": "germinal-demo",
  "target_pdb": "HEADER    PASTE A TARGET ANTIGEN PDB HERE",
  "target_chain": "A",
  "target_hotspots": "A56,A57,A58",
  "binder_format": "vhh",
  "max_trajectories": 10,
  "max_passing_designs": 2
}'

The reply is 202 with a queued job; poll its status_url until status is succeeded or failed. See the quick start for the whole exchange.

Responses

What comes back

statusMeaning
queued Accepted, waiting for the jobs ahead of it. `position` counts how many those are.
running The tool is executing now.
succeeded Finished; `result` holds the tool's output and `license` the terms it came under.
failed Finished; `error` holds a code and a message.

Errors

codeMeaning
invalid_input The client supplied invalid or incomplete input.
tool_unavailable The requested third-party dependency is not available on this host.
execution_failed A configured third-party process exited unsuccessfully.
internal_error An adapter failed in a way it does not describe. The detail is in the server log, not the response.
not_found No job has that id. Finished jobs are dropped eventually.