HLA Matching APIs

APIs have been developed to provdid a computational interface to the matching tools provided on this site. Example entry points and syntax are provided below, accompanied by example outputs.

The call must contain a patient ID followed by the required types, and a donor ID followed by the required types. Multiple donors can be entered by repeating the donor part of the query.

Ambiguous typings are not permitted and all alleles should be defined to at least two fields; i.e. '07:02' and not '07'. In cases of apparent homozygosity, the typing should be entered in both boxes, or an error will be reported.

Multiple donors can be queried by repeating the donor part of the request.

Please note: No information entered into these tools is collected or stored on our servers.

CE Marking, MHRA and MDR compliance

The matching algorithms available on the IPD websites are classified as decision support software, they provide reference information to enable a healthcare professional (HCP) to make a clinical decision, where the HCP ultimately rely on their own knowledge and expertise to decide on the treatment option for their patient. The algorithms will filter the data for the healthcare professional to review, the raw data will always need to be reviewed and any reported results are calculated based on algorithms implemented from peer-reviewed published papers. The results could be reproduced manually but the tools allow for a faster analysis time, and analysis of multiple patient and donor combinations at the same time. For this reason, this software is not considered as a medical device under regulation The United Kingdom Medical Devices Regulation 2002 (UK MDR 2002).

KeyExample Value
pidPatient ID
patb1Patient 2-field HLA-B typing
patb2Patient 2-field HLA-B typing
patc1Patient 2-field HLA-C typing
patc2Patient 2-field HLA-C typing
patdpb1Patient 2-field HLA-DPB1 typing
patdpb2Patient 2-field HLA-DPB1 typing
didDonor ID
donb1Donor 2-field HLA-B typing
donb2Donor 2-field HLA-B typing
donc1Donor 2-field HLA-C typing
donc2Donor 2-field HLA-C typing
dondpb1Donor 2-field HLA-DPB1 typing
dondpb2Donor 2-field HLA-DPB1 typing

HLA-DPB TCE (Version 2.0) API

Examples queries are shown below;

TypeQuery
Entry pointhttps://www.ebi.ac.uk/cgi-bin/ipd/pl/hla/dpb_v2.cgi?
Single donor querypid=1&patdpb1=01:01&patdpb2=02:01&did=2&dondpb1=03:01&dondpb2=04:01
Multi donor querypid=1&patdpb1=01:01&patdpb2=02:01&did=2&dondpb1=03:01&dondpb2=04:01&did=2&dondpb1=03:01&dondpb2=04:01

An example of the JSON formatted output is show below;

{
	"HLA-DPB1_TCE_report_V2.0": {
		"patient": {
			"patientid": "1",
			"gene": {
				"HLA-DPB1": [{
						"allele": "HLA-DPB1*01:01",
						"tce_group": "3 (Low)"
					},
					{
						"allele": "HLA-DPB1*02:01",
						"tce_group": "3 (Low)"
					}
				]
			},
			"donor": [{
				"donorid": "2",
				"gene": {
					"HLA-DPB1": [{
							"allele": "HLA-DPB1*03:01 ",
							"tce_group": "2 (Intermediate)"
						},
						{
							"allele": "HLA-DPB1*04:01 ",
							"tce_group": "3 (Low)"
						}
					]
				},
				"results": {
					"tce_prediction": "Non-Permissive HvG"
				}
			}]
		}
	}
}

HLA-B Leader API

An API has been developed for this tool, and can be queried from the URL or from the command line using curl. Example queries are shown below;

TypeQuery
Entry pointhttps://www.ebi.ac.uk/cgi-bin/ipd/matching/b_leader
Alternative entry pointhttps://www.ebi.ac.uk/cgi-bin/ipd/pl/hla/hlab_leader.cgi?
Single donor querypid=1&patb1=15:02&patb2=07:02&did=2&donb1=15:02&donb2=35:01
Multi donor querypid=1&patb1=15:02&patb2=07:02&did=2&donb1=15:02&donb2=35:01&did=3&donb1=35:01&donb2=73:01
Full example URLhttps://www.ebi.ac.uk/cgi-bin/ipd/matching/b_leader?pid=1&patb1=15:02&patb2=07:02&did=2&donb1=15:02&donb2=35:01

An example of the JSON formatted output is show below;

{
	"HLA-B_leader": {
		"patient": {
			"patientid": "1",
			"gene": {
				"HLA-B": [{
						"allele": "HLA-B*15:02",
						"b_leader": "T "
					},
					{
						"allele": "HLA-B*07:02",
						"b_leader": "M "
					}
				]
			}
		},
		"donor": [{
			"donorid": "2",
			"gene": {
				"HLA-B": [{
						"allele": "HLA-B*15:02",
						"b_leader": "T "
					},
					{
						"allele": "HLA-B*35:01",
						"b_leader": "T "
					}
				]
			},
			"results": {
				"b_leader": "Mismatched"
			}
		}]
	}
}

KIR Ligand Calculator API

An API has been developped for this tool, and can be queried from the URL or from the command line using curl. Example queries are shown below:

TypeQuery
Entry pointhttps://www.ebi.ac.uk/cgi-bin/ipd/matching/kir_ligand
Single donor querypid=1&patb1=15:01&patb2=07:02&patc1=02:02&patc2=01:02&did=1&donb1=07:02&donb2=15:01&donc1=01:02&donc2=02:02
Multi donor querypid=1&patb1=15:01&patb2=07:02&patc1=02:02&patc2=01:02&did=1&donb1=07:02&donb2=15:01&donc1=01:02&donc2=02:02&did=2&donb1=07:03&donb2=08:01&donc1=01:03&donc2=03:02
Full example URLhttps://www.ebi.ac.uk/cgi-bin/ipd/matching/kir_ligand?pid=1&patb1=15:01&patb2=07:02&patc1=02:02&patc2=01:02&did=1&donb1=07:02&donb2=15:01&donc1=01:02&donc2=02:02

An exaple of the JSON formatted output is shown below:

{
    "KIR-Ligand_Calculator": {
        "donor": [
            {
                "donorid": "1", 
                "gene": {
                    "HLA-B": [
                        {
                            "allele": "HLA-B*07:02", 
                            "kir_ligand": "Bw6"
                        },
                        {
                            "allele": "HLA-B*15:01", 
                            "kir_ligand": "Bw6"
                        }
                    ], 
                    "HLA-C": [
                        {
                            "allele": "HLA-C*01:02", 
                            "kir_ligand": "C1"
                        }, 
                        {
                            "allele": "HLA-C*02:02", 
                            "kir_ligand": "C2"
                        }
                    ]
                }, 
                "results": {
                    "kir_ligand_prediction": {
                        "gvh": {
                            "HLA-B": "matched",
                            "HLA-C": "matched", 
                            "total": "matched"
                        },
                        "hvg": {
                            "HLA-B": "matched", 
                            "HLA-C": "matched", 
                            "total": "matched"
                        }
                    }
                }
            }
        ],
        "patient": {
            "gene": {
                "HLA-B": [
                    {
                        "allele": "HLA-B*15:01", 
                        "kir_ligand": "Bw6"
                    }, 
                    {
                        "allele": "HLA-B*07:02", 
                        "kir_ligand": "Bw6"
                    }
                ], 
                "HLA-C": [
                    {
                        "allele": "HLA-C*02:02", 
                        "kir_ligand": "C2"
                    }, 
                    {
                        "allele": "HLA-C*01:02", 
                        "kir_ligand": "C1"
                    }
                ]
            }, 
            "patientid": "1"
        }
    }
}