We provide two types of ancestry, Global Ancestry and Mitochondrial Ancestry. Both types of ancestry summary can be generated using a single endpoint after the DNA file has finished processing. We can use the /start-ancestry-generation/ endpoint to trigger the both types of ancestry generation for a profile.
We provide two separate endpoints for each type of ancestry. We can query these endpoints using profile_id to get the ancestry for a given profile.
Global Ancestry
The /ancestry-summary/ endpoint can be used to view the global ancestry. It will contain an JSON object called ancestry_summary in the following format:
{
"LEVEL_1_CODE": {
"percentage": 1,
"LEVEL_2_CODE": {
"percentage": 1,
"LEVEL_3_CODE": {
"percentage": 1
}
}
}
}
An ancestry summary object can have multiple level 1, 2 and 3 regions. Below is an example ancestry summary:
{
"EUR": {
"NWE": {
"BRI": {
"percentage": 0.3835
},
"FRG": {
"percentage": 0.5556
},
"percentage": 0.939
},
"SEU": {
"SPP": {
"percentage": 0.0383
},
"percentage": 0.0383
},
"EAE2": {
"EAE": {
"percentage": 0.0226
},
"percentage": 0.0226
},
"percentage": 1.0
}
}
To get the details of the level codes, we can use the /population-codes/ endpoint which will list all the codes with their names and some additional detail.
Model Version
Global ancestry also includes a field called model_version. As we improve the accuracy of our data pielines, we release new versions. When querying the population-codes endpoint, we can use the model_version to get the population codes only for the model_version of the given ancestry summary.
Mitochondrial Ancestry
We can get Mitochondrial Ancestry using the endpoint /haplotype-summary/. It contains the ancestry in the field called result in the following format:
{
"lineage": ["final_haplogroup", "haplogroup2", "haplogroup1", "L"],
"quality": 0.9753,
"haplogroup": "final_haplogroup"
}
Here haplogroup is the final hoplogroup of the user while lineage contains the complete path to the user's final haplogroup. Here is a sample mitochondrial ancestry summary:
{
"lineage": [
"HV0", "HV", "R0", "R", "N", "L3", "L3'4", "L3'4'6", "L2'3'4'6", "L2'3'4'5'6", "L1'2'3'4'5'6", "L"
],
"quality": 0.9753,
"haplogroup": "HV0"
}
To get more details about each haplogroup, we can use the /haplogroups/ endpoint. It has several more details about the haplogroup, like their location (latitude, longitude), description, origin, etc.
