Category Scores
Retrieve functional wellness category scores and marker contribution context for User-facing dashboards.
Category Scores
Category Scores summarize a User's biomarker and physiomarker data into functional wellness categories. They help Users understand how groups of related markers connect to areas they can recognize in daily life, such as sleep, recovery, heart health, cognition, and metabolism.
In the API Reference, this surface appears under Biomarker Categories. Use the public marker-category reference endpoint to understand the available categories, then use the customer-level category-score endpoint to retrieve score state and contribution details for a User's results.
Present marker data through categories that Users can understand and monitor as they change habits.
Show high-level changes between results so Users can see movement across functional areas.
Use contribution details to show which markers helped determine each category score.
Where This Fits
Category Scores are available after the User has result data that can be grouped into health categories. This page focuses on retrieving and presenting the category-level output.
What Category Scores Are
Category Scores provide a high-level view of specific functional wellness areas. Instead of asking Users to interpret individual biomarkers in isolation, Category Scores group related biomarkers and physiomarkers into categories that are easier to connect to a User's lived experience.
This helps turn a long list of lab values into a smaller set of scoreable areas a User can understand, compare, and act on. A single biomarker can contribute to more than one category, so category scores should be treated as a separate output layer rather than a one-to-one grouping of markers.
The category reference endpoint returns the current category names, applicability, and descriptions. The current functional wellness categories are:
| Category | Reference tag | Applies to | Description |
|---|---|---|---|
| Metabolism | METABOLISM | All | Metabolism reflects the body processes that consume and use energy for the growth, repair, and maintenance of cells, tissues, and organs. Metabolic biomarkers reflect the efficiency of this process. |
| Hormone Balance | HORMONE_BALANCE | All | Hormones are chemical messengers that signal the start and stop of biological processes. Hormone balance can reflect life stage, response to emotional and physical stress, sleep quality, and energy levels. |
| Fitness | FITNESS_MALE, FITNESS_FEMALE | Male or female | Fitness reflects the body's ability to perform physical activity. Fitness-related biomarkers reflect energy levels, response to stress, cellular repair efficiency, and overall muscle health. |
| Recovery | RECOVERY | All | Recovery biomarkers provide insight into the body's response to exercise or physical activity across different intensities and durations. |
| Endurance | ENDURANCE | All | Endurance capacity indicates the ability to sustain cardiovascular and muscular activities. Endurance biomarkers reflect aerobic capacity, energy utilization, oxygen transport, and stamina. |
| Inflammation | INFLAMMATION | All | Inflammation describes the body's ability to protect and respond to foreign substances, including pathogens, infections, viruses, and stressors. |
| Sleep | SLEEP | All | Sleep supports repair processes and memory consolidation. Blood biomarker levels can affect, and be affected by, the ability to fall asleep and achieve good quality sleep. |
| Heart Health | HEART_HEALTH | All | Heart Health reflects the cardiovascular system, including arteries, vessels, and related systems. Blood biomarkers of heart health can indicate the body's ability to transport and clear cholesterol. |
| Cognition | COGNITION | All | Cognition reflects brain and nerve function, including reaction time and mood. Cognitive biomarkers can indicate the ability to focus, process information, and consolidate memories. |
| Gut Health | GUT_HEALTH | All | Gut Health is characterized by the abundance and diversity of beneficial bacteria in the gut microbiome. The composition of the gut affects many body systems and processes, including cognition and inflammation. |
Category Scores are also useful across tests. Because the API returns scores by result, your application can show whether a functional area improved, declined, or stayed similar between tests. This gives Users a higher-level way to understand the impact of recommendations or habit changes without losing the marker-level detail underneath.
Use Category Scores as a dashboard-level signal. When a User needs more explanation, use the returned contribution fields and marker-level experiences to show which biomarkers or physiomarkers influenced the category.
Category Scores are displayed as numeric scores with a maximum of 100. Category reference ranges map scores to descriptive states such as OPTIMAL, GOOD, FAIR, and NEEDS_WORK.
Category Score presentation can combine several signals depending on the experience you are building:
| Display element | How it helps |
|---|---|
| Numeric score | Gives the User a concrete metric they can track over time and use as a behavior-change anchor. |
| State or color | Provides at-a-glance status so the User can quickly see which categories are doing well and which may need attention. |
| Marker contribution view | Shows which biomarkers or physiomarkers are contributing positively or negatively to the category score. |
| Category-level action path | Helps Users target interventions or self-select recommendations tied to the category they want to improve, such as sleep, recovery, or cognition. |
Data Needed For This Output
| Data | Required? | How InsideTracker receives it | Why it matters | If it is missing |
|---|---|---|---|---|
| Linked InsideTracker customer record and customer-level token | Required | Create the linked customer record for the User and store the returned credentials. | The category-score endpoint is a customer-level API. | Your application cannot retrieve User-specific category scores. |
| Published blood result data | Required | Add Blood Result, Blood Result Upload, OCR, or Lab Connect. | Category scores are returned by result and include the result date and result ID. | The User may have no category-score results to display. |
| Category reference data | Recommended for display | Retrieve with GET /api/public/references/marker-categories. | Reference data maps category abbreviations to display names, descriptions, score ranges, and marker membership. | Your application may only be able to show raw category abbreviations and returned score fields. |
| Connected physio data | Conditional | Connecting Wearable Devices and related physio data workflows. | Some categories can include physiomarker contributions such as average sleep metrics, resting heart rate, steps, or VO2 max. Average physio inputs in Category Scores are monthly averages. | Category contribution details or score state may reflect missing, stale, or unused source data when those fields are returned. |
| Biological sex or gender context | Conditional | Creating Users and Adding Profile Data. | Some category inputs differ by male/female grouping, and category reference data includes forGender applicability. | Your application may need to filter or label category display based on returned applicability fields. |
| Recent marker data | Required for current scores | Published blood results and connected physio data. | Category Scores are intended to reflect recent marker values. | Missing or stale inputs can prevent a category from being determined or can change which contribution fields are returned. |
The customer-level category-score endpoint requires a customer-level access token. Requests made without customer-level authentication will fail authorization.
Category Input Requirements
Each category has required markers and additional markers that can contribute when available. Required markers are inputs the category needs before the score can be determined. Average physiomarker inputs listed in this table are monthly averages. Use this table to understand input coverage, then retrieve the score, state, and contribution details from the API.
| Category | Required markers | Additional markers that can contribute |
|---|---|---|
| Metabolism | Glucose, HbA1c, LDL, HDL, Triglycerides, ALT | Total cholesterol, ApoB, Insulin, TSH, Average steps |
| Hormone Balance (male) | SHBG, Testosterone, Cortisol, Vitamin D, Calcium | Free testosterone, Magnesium, Red blood cell magnesium, Insulin, TSH, Progesterone, Estradiol, Average resting heart rate |
| Hormone Balance (female) | SHBG, Testosterone, DHEAS, Cortisol, Vitamin D, Calcium | Magnesium, Red blood cell magnesium, Insulin, TSH, Progesterone, Estradiol, Average resting heart rate |
| Fitness (male) | Vitamin B12, SHBG, Testosterone, Cortisol | Folate, Free testosterone, Average steps |
| Fitness (female) | Vitamin B12, Testosterone, DHEAS, Cortisol | Folate, SHBG, Average steps |
| Recovery | Magnesium, Red blood cell magnesium, ALT, AST, GGT, hsCRP or CRP | Albumin, Creatine Kinase, Sodium, Potassium, Vitamin D, Deep sleep, REM sleep, Sleep duration |
| Endurance | Ferritin, Hemoglobin, Platelets, MPV | TIBC, Iron, Transferrin Saturation, RBC, Hematocrit, MCH, MCHC, RDW, MCV, Vitamin B12, VO2max |
| Inflammation | hsCRP or CRP, WBC, Ferritin | Neutrophils, Basophils, Eosinophils, Lymphocytes, Monocytes, Vitamin D |
| Sleep | Glucose, HbA1c, hsCRP or CRP, WBC, Magnesium, Red blood cell magnesium | Testosterone, Vitamin D, Cortisol, Insulin, Average sleep duration, Average REM sleep percentage, Average deep sleep percentage, Average resting heart rate |
| Heart Health | Total cholesterol, LDL cholesterol, HDL cholesterol, Triglycerides, hsCRP or CRP | ApoB, TSH, Average resting heart rate, Average VO2 max |
| Cognition | Glucose, HbA1c, Cortisol, Folate | Vitamin B12, Insulin, Deep sleep, REM sleep, Sleep duration |
| Gut Health | Glucose, HbA1c, Cortisol, HDL cholesterol, Triglycerides | hsCRP or CRP, Deep sleep |
Workflow
Use Category Scores in two layers:
- Retrieve category reference data.
- Retrieve category scores for the User.
- Match each returned
categoryScores[].abbrto the referenceitems[].abbr. - Display the score, state, result date, and contribution details when your experience needs explanation.
Get Category Reference Data
Use the public reference endpoint to retrieve the available marker categories.
GET /api/public/references/marker-categoriesThe response includes an items array. Each category can include:
| Field | Description |
|---|---|
abbr | Category abbreviation, such as METABOLISM. |
name | Display name for the category. |
forGender | Applicability value returned by the API, such as all, m, or f. |
description | Category description. |
ranges | Score ranges for category states, including state, from, and to. |
bloodMarkerAbbrs | Blood marker abbreviations associated with the category. |
physioMarkerAbbrs | Physiomarker abbreviations associated with the category. |
Use this endpoint instead of hard-coding category names, score ranges, or marker membership.
Get Category Scores
Use the customer-level endpoint to retrieve category scores grouped by result.
GET /api/customer/markers/categories-for-each-result
Authorization: Bearer {customer_access_token}You can pass forLastResults when your application only needs a limited number of recent results.
GET /api/customer/markers/categories-for-each-result?forLastResults=3
Authorization: Bearer {customer_access_token}The response includes an items array. Each item represents a result and includes category scores for that result.
{
"items": [
{
"resultId": 19735,
"testedAt": "2023-04-18T00:00:00-04:00",
"categoryScores": [
{
"abbr": "HORMONE_BALANCE",
"score": 51,
"state": "CANNOT_DETERMINE",
"contributions": [
{
"markerType": "blood",
"markerAbbr": "hsCRP",
"tested": true,
"expired": false,
"used": true,
"optimizationState": "LOW",
"score": 2.1
}
]
}
]
}
]
}Response Fields
| Field | Description |
|---|---|
items | Result-level category score entries. |
resultId | Identifier for the result associated with the category scores. |
testedAt | Date/time associated with the result. |
categoryScores | Category score entries for the result. |
categoryScores[].abbr | Category abbreviation. Match this to category reference data for names and descriptions. |
categoryScores[].score | Numeric category score returned by the API. Category Scores are displayed on a 0-100 scale. |
categoryScores[].state | Score state returned by the API. Use returned states and reference ranges instead of inventing labels. |
categoryScores[].contributions | Marker-level contribution entries that help explain the category score. |
Contribution entries can include marker identity, marker type, whether the marker was tested or used, freshness indicators, optimization state, and contribution score fields. Use these fields for explanatory UI, troubleshooting, or support views when your experience needs to show why a score looks the way it does.
Output Availability
| State | What it means | Application handling |
|---|---|---|
| Category reference data returned | The public category catalog is available. | Use it to render category names, descriptions, ranges, and marker membership. |
| Category scores returned | The User has result-level category scores. | Display scores by result date and map category abbreviations to reference data. |
| No result entries returned | The User has no category-score results in the requested range. | Show an empty state or direct the User to the relevant data onboarding step. |
| Category state cannot be determined | The API returned a state such as CANNOT_DETERMINE. | Avoid displaying the score as fully resolved. Use contribution fields to explain missing, stale, or unused inputs when available. |
| Contribution data returned | The response includes marker-level contribution fields. | Use these fields to explain score drivers without recreating the scoring model in your application. |
| Score ranges returned | Category reference data includes ranges for score states. | Use the returned ranges and states to label scores; do not hard-code thresholds outside the reference data. |
Best Practices
Implementation guidance
- Retrieve category reference data before building category-score display logic.
- Treat category abbreviations, state values, score ranges, and marker membership as API data.
- Use numeric scores, states, colors, and contribution details as complementary display layers when your product experience supports them.
- Show
testedAtor the associated result date when comparing category scores over time. - Design for categories that cannot be determined for a given result.
- Remember that one biomarker can contribute to multiple categories.
- Use contribution fields to explain score context, not to rebuild InsideTracker's scoring model.
- Keep Category Scores separate from Recommendations, Action Plan, Inner Age, and Optimal Zones in your data model.
- Use the API Reference for current schemas, optional fields, and response behavior.
Implementation Checklist
- You have a customer-level access token for the User.
- The User has published result data that can support category scores.
- Your application retrieves or stores category reference data for display names, descriptions, ranges, and marker membership.
- Your UI handles empty result lists and categories that cannot be determined.
- Your data model can connect category scores to
resultIdandtestedAt. - Your display handles contribution fields when they are present.
Related API Reference
GET /api/public/references/marker-categoriesGET /api/customer/markers/categories-for-each-result- Optional supporting content:
GET /api/public/marker-categories/{categoryAbbr}/extra-information - Related topic: Biomarker Reference Data
- Related topic: Optimal Zones
Updated 27 days ago