← API reference
Antibody design · Protein Design

RFantibody API

Design antibody or nanobody backbones against a target structure.

Runs RFantibody's antibody-finetuned RFdiffusion stage with a target, framework, CDR loop ranges, and optional hotspots.

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 rfantibody-demo Job name
target_pdb string file yes HEADER PASTE A TARGET ANTIGEN PDB HERE Target antigen PDB file types .pdb,.ent.
framework_pdb string file yes HEADER PASTE AN ANTIBODY FRAMEWORK PDB HERE Antibody framework PDB HLT-formatted framework PDB. file types .pdb,.ent.
design_loops string text yes H1:7,H2:6,H3:5-13 CDR loop lengths For example H1:7,H2:6,H3:5-13 or include L1/L2/L3 for an scFv.
hotspots string text no Target hotspots Optional comma-separated target residues, for example B146,B170,B177.
num_designs number number no 2 Backbone designs minimum 1, maximum 1000.
seed number number no 0 Random seed minimum 0, maximum 2147483647.
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/rfantibody/ \
  -H 'Content-Type: application/json' \
  -d '{
  "job_name": "rfantibody-demo",
  "target_pdb": "HEADER    PASTE A TARGET ANTIGEN PDB HERE",
  "framework_pdb": "HEADER    PASTE AN ANTIBODY FRAMEWORK PDB HERE",
  "design_loops": "H1:7,H2:6,H3:5-13",
  "hotspots": "",
  "num_designs": 2,
  "seed": 0
}'

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.