Protein Allosteric Sites Server


PASSer now provides APIs to make it easier for users to submit jobs and get results.

Currently, the APIs only accept predictions on existing PDB IDs.

Table below lists the available keywords and possible values.

pdb: PDB ID. Case insensitive.
chain: chain ID. Optional, default to use all chains.
model: model name. Optional. Available values: ensemble (default), automl, rank.
format: result format. Optional. Available values: json (default), zip.
pdbFile: user uploaded custom PDB file. See specific instructions below.

Two common senarios are introduced here: (1) Python requests and (2) Terminal curl.

In Python, specify the PDB ID and chain ID in a dictionary and pass that to requests post function.

import requests

url = ''
data = {"pdb": "5DKK", "chain": "A"}

results =, data=data)

# upload a local file
files = {'pdbFile': open(your_pdb_file_dir, 'rb')}
results =, files=files)

In Terminal, pass arguments through -d option.

curl -X POST -d pdb=5dkk -d chain=A

curl -X POST -d pdb=5dkl -d chain=B -d model=automl

The PASSer API returns top 3 pockets probabilities with residues in json format by default. The resiudes are formatted in VMD-ready command. An example return is show below.

    "1": {
        "prob": "89.65%",
        "residues": "chain A and resid 333 329 303 346 290"
    "2": {
        "prob": "20.22%",
        "residues": "chain A and resid 270 321 352 269 250"
    "3": {
        "prob": "16.83%",
        "residues": "chain A and resid 302 298 297 313 369"

The users can also download the FPocket results along with the PASSer predictions by specifying format to zip.

curl -X POST \
-d "pdb=5dkk&chain=A&model=ensemble&format=zip" \ \

If users want to upload custom PDB files, please use -F option and add @ before your PDB path. One example of command using downloaded AlphaFold predicted structure is shown below.

curl -X POST \
-F pdbFile=@Downloads/AF-A0A5E8GAP1-F1-model_v4.pdb \
-F model=rank \