IEDB Analysis Resource

RESTful interface (IEDB-API):

Several IEDB Analysis tools can now be accessed via the RESTful (REpresentational State Transfer) Web Services. This service is currently available for MHC-I and MHC-II binding, MHC-I processing and MHC-NP predictions for T-cell epitopes. The service sends POST request to the tools server, and relies on user supplied parameters. Below are some examples for accessing the service using the 'curl' program. Note that any program that sends POST requests to the server will work just as well (including a web browser).
The full list of parameters and their values for MHC I and MHC II-binding, MHC I-processing and MHC-NP predictions are given in the table below. Please use these services instead of screen-scraping.
In release 2.15, a new API system for the class I binding predictions was made public. For end users, it should result in faster prediction times over the previous iterations, especially for large batches of sequences and CPU-intensive methods such as NetMHCPan and PickPocket.
* If relevant services are missing, please contact us.

Examples for Class-I binding prediction
1) To run a single allele and length combination:
$ curl --data "method=smm&sequence_text=SLYNTVATLYCVHQRIDV&allele=HLA-A*01:01&length=9" http://tools-cluster-interface.iedb.org/tools_api/mhci/

2) To specify a version for methods:
$ curl --data "method=netmhcpan-4.0&sequence_text=ARFTGIKTA&allele=HLA-A*01:01&length=9" http://tools-cluster-interface.iedb.org/tools_api/mhci/
A "-" is used to separate method name and method version. If the version is not specified, the default version will be chosen. The available versions of the methods are listed below.
Available methods (and aliases) Available versions (bold = default)
recommended 2023.09, 2020.09, 2020.04
ann 4.0
comblib_sidney2008 1.0
consensus 2.18
netmhccons 1.1
netmhcpan_ba (recommended_binding, netmhcpan) 4.1, 4.0
netmhcpan_el (recommended_epitope, recommended) 4.1, 4.0
netmhcstabpan 1.0
pickpocket 1.1
smm 1.0
smmpmbec 1.0

3) To run multiple allele and length combinations:
$ curl --data "method=recommended&sequence_text=SLYNTVATLYCVHQRIDV&allele=HLA-A*01:01,HLA-A*02:01&length=8,9" http://tools-cluster-interface.iedb.org/tools_api/mhci/

4) To submit multiple sequences at a time, escape the special characters in a fasta-formatted sequence with URI codes.
E.g., we can predict for 2 sequences (with fasta names peptide1 and peptide2) with the following code:
$ curl --data "method=ann&sequence_text=%3Epeptide1%0AGHAHKVPRRLLKAAR%0A%3Epeptide2%0ALKAADASADADGSGSGSGSG&allele=HLA-A*01:01,HLA-A*03:01&length=9,10" http://tools-cluster-interface.iedb.org/tools_api/mhci/

5) To recieve the prediction result in you email address, input your email adress with a parameter "email_address".
E.g., we can send the prediction result to the email address "youremail@example.com" (Don't forget to use your email address to replace it.) with the following code:
$ curl --data "method=recommended&sequence_text=SLYNTVATLYCVHQRIDV&allele=HLA-A*01:01,HLA-A*02:01&length=8,9&email_address=youremail@example.com" http://tools-cluster-interface.iedb.org/tools_api/mhci/

MHC-I binding command line parameters:
Parameter Possible values Default value Required Description
sequence_text * Input protein sequence.
method recommended, netmhcpan_el (recommended_epitope), netmhcpan_ba (recommended_binding), consensus, ann, smmpmbec, smm, comblib_sidney2008, netmhccons, pickpocket, netmhcstabpan recommended NetMHCpan 4.0 & 4.1 was trained on both binding affinity and eluted ligand data leveraging the information from both data types. We provide both Binding Affinity Prediction and Eluted Ligand Prediction option with method names as "netmhcpan_ba" and "netmhcpan_el", and "netmhcpan_ba" is the default method of netmhcpan 4.0 & 4.1.
The 'IEDB recommended' method was updated to use NetMHCpan 4.1 EL across all alleles as of Sep 2020. And two IEDB recommended methods were added on Sep 2023, one for the prediction of peptide binding and one for the prediction of epitopes. For more information, see the help page.

To print the usage and list all available methods:
$ curl --data "" http://tools-cluster-interface.iedb.org/tools_api/mhci/
method_version Available method versions of each method, please see the table above for details. Default method version of each method. The "method_version" is deprecated - specify version with hyphen in 'method' parameter. e.g.,
$ curl --data "method=netmhcpan-4.0&sequence_text=ARFTGIKTA&allele=HLA-A*01:01&length=9" http://tools-cluster-interface.iedb.org/tools_api/mhci/

To print the usage and list all available methods with versions:
$ curl --data "method_version" http://tools-cluster-interface.iedb.org/tools_api/mhci/
allele Allele name species=human * A comma-separated list of the alleles for which to make predictions. This list gets paired with the length list, so there must be a corresponding length for each allele.

To list all available alleles for a specific method and species:
$ curl --data "method=ann&species=human" http://tools-cluster-interface.iedb.org/tools_api/mhci/
length 8, 9, 10, 11, 12, 13, 14, 15 * A comma-separated list of the lengths for which to make predictions. This list gets paired with the allele list, so there must be a corresponding allele for each length.
email_address youremail@example.com A email address or a comma-separated list of the email addresses by which users can receive the prediction result as well.

Examples for Class-II binding prediction
1) To run a single allele:
$ curl --data "method=nn_align&sequence_text=SLYNTVATLYCVHQRIDV&allele=HLA-DRB1*01:01" http://tools-cluster-interface.iedb.org/tools_api/mhcii/

2) To run multiple alleles:
$ curl --data "method=recommended&sequence_text=SLYNTVATLYCVHQRIDV&allele=HLA-DRB1*01:01,H2-IAb" http://tools-cluster-interface.iedb.org/tools_api/mhcii/

3) Select allele(s) with α and β chains:
The two chains must be separated by '/' character as in the example below:
$ curl --data "method=recommended&sequence_text=SLYNTVATLYCVHQRIDV&allele=DPA1*01:03/DPB1*04:01" http://tools-cluster-interface.iedb.org/tools_api/mhcii/

4) To select peptide length(s):
$ curl --data "method=nn_align&sequence_text=SLYNTVATLYCVHQRIDV&allele=HLA-DRB1*01:01&length=13,14,16" http://tools-cluster-interface.iedb.org/tools_api/mhcii/
$ curl --data "method=nn_align&sequence_text=SLYNTVATLYCVHQRIDV&allele=HLA-DRB1*01:01&length=asis" http://tools-cluster-interface.iedb.org/tools_api/mhcii/

5) To submit multiple sequences at a time, escape the special characters in a fasta-formatted sequence with URI codes.
E.g., we can predict for 2 sequences (with fasta names peptide1 and peptide2) with the following code:
$ curl --data "method=recommended&sequence_text=%3Epeptide1%0AGHAHKVPRRLLKAAR%0A%3Epeptide2%0ALKAADASADADGSGSGSGSG&allele=HLA-DRB1*01:01,HLA-DRB1*03:01" http://tools-cluster-interface.iedb.org/tools_api/mhcii/

6) To specify a version for methods:
$ curl --data "method=nn_align-2.2&sequence_text=SLYNTVATLYCVHQRIDV&allele=HLA-DRB1*01:01" http://tools-cluster-interface.iedb.org/tools_api/mhcii/
A "-" is used to separate method name and method version. If the version is not specified, the default version will be chosen. The available versions of the methods are listed below.
Available methods (and aliases) Available versions (bold = default)
recommended 2023.09, 2023.05, 2.22, 2.18
comblib 1.0
consensus 2.22, 2.18
netmhciipan 4.1, 4.0, 3.2, 3.1
netmhciipan_ba (recommended_binding, netmhciipan) 4.1, 4.0
netmhciipan_el (recommended_epitope, recommended) 4.1, 4.0
nn_align (netmhcii) 2.3, 2.2
smm_align (netmhcii) 1.1
tepitope 1.0

7) To recieve the prediction result in you email address, input your email adress with a parameter "email_address".
E.g., we can send the prediction result to the email address "youremail@example.com" (Don't forget to use your email address to replace it.) with the following code:
$ curl --data "method=smm_align&sequence_text=%3Epeptide1%0AGHAHKVPRRLLKAAR%0A%3Epeptide2%0ALKAADASADADGSGSGSGSG&allele=HLA-DRB1*01:01,HLA-DRB1*03:01&email_address=youremail@example.com" http://tools-cluster-interface.iedb.org/tools_api/mhcii/

MHC-II binding command line parameters:
Parameter Possible values Default value Required Description
sequence_text * Input protein sequence.
method recommended, netmhciipan_el (recommended_epitope), netmhciipan_ba (recommended_binding), consensus, nn_align (NetMHCII-2.2 and NetMHCII-2.3), smm_align (NetMHCII-1.1), comblib, tepitope recommended This allows selection from 7 different MHC class II binding prediction methods. The current 'recommended' method is 'NetMHCIIpan EL 4.1'. Two IEDB recommended methods were added on Sep 2023, one for the prediction of peptide binding and one for the prediction of epitopes.

To print the usage and list all available methods:
$ curl --data "" http://tools-cluster-interface.iedb.org/tools_api/mhcii/
method_version Available method versions of each method, please see the table above for details. Default method version of each method. The "method_version" is deprecated - specify version with hyphen in 'method' parameter. e.g.,
$ curl --data "method=nn_align-2.2&sequence_text=SLYNTVATLYCVHQRIDV&allele=HLA-DRB1*01:01" http://tools-cluster-interface.iedb.org/tools_api/mhcii/
allele Allele name * A comma-separated list of the alleles for which to make predictions.

To list all available alleles for a specific method:
$ curl --data "method=nn_align" http://tools-cluster-interface.iedb.org/tools_api/mhcii/
length 11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30 15 A comma-separated list of the lengths for which should be between 11-30.
Or users could put "asis" as the length input then the prediciton will take the length of input sequence as the peptide length.
email_address youremail@example.com A email address or a comma-separated list of the email addresses by which users can receive the prediction result as well.

Examples for MHC-I Processing prediction
1) To run a single allele and length combination:
$ curl --data "method=smm&sequence_text=SLYNTVATLYCVHQRIDV&allele=HLA-A*01:01&length=9" http://tools-cluster-interface.iedb.org/tools_api/processing/

2) To run multiple allele and length combinations:
$ curl --data "method=recommended&sequence_text=SLYNTVATLYCVHQRIDV&allele=HLA-A*01:01,HLA-A*02:01&length=8,9" http://tools-cluster-interface.iedb.org/tools_api/processing/

3) To submit multiple sequences at a time, escape the special characters in a fasta-formatted sequence with URI codes.
E.g., we can predict for 2 sequences (with fasta names peptide1 and peptide2) with the following code:
$ curl --data "method=ann&sequence_text=%3Epeptide1%0AGHAHKVPRRLLKAAR%0A%3Epeptide2%0ALKAADASADADGSGSGSGSG&allele=HLA-A*01:01,HLA-A*03:01&length=9,10" http://tools-cluster-interface.iedb.org/tools_api/processing/

MHC-I processing command line parameters:
Parameter Possible values Default value Required Description
sequence_text * Input protein sequence.
method recommended, netmhcpan, ann, smmpmbec, smm, comblib_sidney2008, netmhccons, pickpocket recommended This allows selection from 8 different MHC class I processing prediction methods. 'recommended' method uses 'netmhcpan'.

To print the usage and list all available methods:
$ curl --data "" http://tools-cluster-interface.iedb.org/tools_api/processing/
allele Allele name * A comma-separated list of the alleles for which to make predictions. This list gets paired with the length list, so there must be a corresponding length for each allele.

To list all available alleles for a specific method and species:
$ curl --data "method=ann&species=human" http://tools-cluster-interface.iedb.org/tools_api/processing/
length 8, 9, 10, 11, 12, 13, 14 * A comma-separated list of the lengths for which to make predictions. This list gets paired with the allele list, so there must be a corresponding allele for each length.
proteasome immuno, constitutive immuno There are two types of proteasomes, the constitutively expressed 'house-keeping' type, and immuno proteasomes that are induced by IFN-γ secretion.

Examples for MHC-NP prediction
1) To run a single allele and length combination:
$ curl --data "method=mhcnp&sequence_text=SLYNTVATLYCVHQRIDV&allele=HLA-A*02:01&length=9" http://tools-cluster-interface.iedb.org/tools_api/mhcnp/

2) To run multiple allele and length combinations:
$ curl --data "method=mhcnp&sequence_text=SLYNTVATLYCVHQRIDV&allele=HLA-A*02:01,H-2-Db&length=8,9" http://tools-cluster-interface.iedb.org/tools_api/mhcnp/

3) To submit multiple sequences at a time, escape the special characters in a fasta-formatted sequence with URI codes.
E.g., we can predict for 2 sequences (with fasta names peptide1 and peptide2) with the following code:
$ curl --data "method=mhcnp&sequence_text=%3Epeptide1%0AGHAHKVPRRLLKAAR%0A%3Epeptide2%0ALKAADASADADGSGSGSGSG&allele=HLA-A*02:01,H-2-Db&length=8,9" http://tools-cluster-interface.iedb.org/tools_api/mhcnp/

MHC-NP command line parameters:
Parameter Possible values Default value Required Description
sequence_text * Input protein sequence.
method mhcnp, netmhcpan mhcnp This allows two prediction method - 'mhcnp' and 'netmhcpan' method.
Unlike MHC-I netmhcpan method, which is trained on binding affinity data, MHC-NP netmhcpan method is trained on elulted ligand data.

To print the usage:
$ curl --data "" http://tools-cluster-interface.iedb.org/tools_api/mhcnp/
allele Allele name * A comma-separated list of the alleles for which to make predictions. This list gets paired with the length list, so there must be a corresponding length for each allele. Currently, the tool supports only HLA-A*02:01, HLA-B*07:02, HLA-B*35:01, HLA-B*44:03, HLA-B*53:01, HLA-B*57:01, H-2-Db, and H-2-Kb alleles

To list all available alleles for a specific method:
$ curl --data "method=mhcnp" http://tools-cluster-interface.iedb.org/tools_api/mhcnp/
length 8, 9, 10, 11 * A comma-separated list of the lengths for which to make predictions. This list gets paired with the allele list, so there must be a corresponding allele for each length.

Examples for Antibody Epitope Prediction
1) To run the prediction for a sequence:
$ curl --data "method=Emini&sequence_text=VLSEGEWQLVLHVWAKVEADVAGHGQDILIRLFKSHPETLEKFDRFKHLKTE" http://tools-cluster-interface.iedb.org/tools_api/bcell/

2) To run the prediction for a sequence using window_size option:
$ curl --data "method=Emini&sequence_text=VLSEGEWQLVLHVWAKVEADVAGHGQDILIRLFKSHPETLEKFDRFKHLKTE&window_size=9" http://tools-cluster-interface.iedb.org/tools_api/bcell/

Antibody Epitope Prediction command line parameters:
Parameter Possible values Default value Required Description
sequence_text * Input protein sequence.
method Chou-Fasman, Emini, Karplus-Schulz, Kolaskar-Tongaonkar, Parker, Bepipred(Bepipred-1.0), Bepipred-2.0 Bepipred This allows selection from 7 different Antibody Epitope prediction methods.
window_size An integer value