---
title: "List biomarkers"
method: GET
path: "/api/v1/biomarkers"
tags: ["Biomarkers"]
---

# List biomarkers

`GET /api/v1/biomarkers`

## Request

- Base URL: `https://www.vitalsvault.com`
- URL: `https://www.vitalsvault.com/api/v1/biomarkers`
- Auth: none declared

Get a paginated list of biomarkers with optional filtering

## Query parameters

- `page` integer
- `pageSize` integer
- `limit` integer
- `cursor` string
- `sortBy` string
- `sortOrder` 'asc' | 'desc'
- `search` string
- `fields` string
- `category` string
- `gender` 'male' | 'female'
- `hasJunctionMapping` boolean
- `inPackages` string

## Response `200`

Successfully retrieved biomarkers

- object
  - `success` boolean, required: Indicates if the request was successful
  - `data` object: Response data (only present if success is true)
    - `data` object[]
      - `id` string, uuid, required
      - `slug` string, required
      - `name` string, required
      - `categoryId` string, uuid
      - `categorySlug` string, required
      - `applicableGender` 'male' | 'female' | 'both'
      - `summary` string: Brief summary of the biomarker
      - `significance` string: Medical significance of the biomarker
      - `symptoms` string[]
      - `causes` string[]
      - `metaDescription` string: SEO meta description
      - `keyInsights` string[]
      - `loincCode` string
      - `loincName` string
      - `unit` string
      - `hasContent` boolean
      - `junctionMarkerId` string: Junction Health marker ID for lab integration
      - `includedInPackages` string[]
      - `seoVariations` string[]: Alternative search terms
      - `medicalReviewStatus` 'pending' | 'reviewed' | 'approved'
      - `lastMedicalReview` string, date-time
      - `viewCount` integer
      - `searchVolume` integer
      - `trendingScore` number, float
      - `lastUpdated` string, date-time
      - `createdAt` string, date-time
      - `updatedAt` string, date-time
    - `pagination` object
      - `page` integer, required: Current page number
      - `pageSize` integer, required: Number of items per page
      - `totalCount` integer, required: Total number of items
      - `totalPages` integer, required: Total number of pages
      - `hasNextPage` boolean: Whether there is a next page
      - `hasPreviousPage` boolean: Whether there is a previous page
      - `hasNext` boolean: Whether there is a next page
      - `hasPrevious` boolean: Whether there is a previous page
      - `cursor` string: Cursor representing the current offset
      - `next_cursor` string, nullable: Cursor for the next page; null when hasNext is false
  - `error` object
    - `code` string, required: Error code for programmatic handling
    - `message` string, required: Human-readable error message
    - `details` string: Additional error details
  - `meta` object
    - `queryTime` integer: Query execution time in milliseconds
    - `cached` boolean: Whether the response was served from cache

## Other responses

- `400`: Bad request
- `429`: Rate limit exceeded
- `500`: Internal server error

---

[API](https://skmtc.dev/vitalsvault/apis/vitals-vault-educational-api.md) · [All operations](https://skmtc.dev/vitalsvault/apis/vitals-vault-educational-api/llms.txt) · [OpenAPI document](https://skmtc.dev/vitalsvault/apis/vitals-vault-educational-api/revisions/957d19299c33?raw)
