---
title: "Recommend tests for goals or symptoms"
method: POST
path: "/api/agent/recommend_tests"
tags: ["catalog"]
---

# Recommend tests for goals or symptoms

`POST /api/agent/recommend_tests`

## Request

- Base URL: `https://www.test-well.com`
- URL: `https://www.test-well.com/api/agent/recommend_tests`
- Auth: none declared

Suggest TestWell panels and tests for stated health goals (e.g. 'annual checkup', 'heart health', 'TRT monitoring') and/or symptoms (e.g. 'fatigue', 'hair loss'). Prefers a curated pre-built panel when one fits; otherwise assembles individual tests within a budget.

## Request body

- object
  - `goals` string[]: Health goals, e.g. ['energy', 'thyroid']
  - `symptoms` string[]: Symptoms, e.g. ['always cold', 'weight gain']
  - `budget` 'low' | 'medium' | 'high' | 'no_limit': Budget band: low ≈ $80, medium ≈ $200, high ≈ $400

## Response `200`

Tool result

- object
  - `tool` 'recommend_tests', required
  - `result` object, required
    - `goals` string[]
    - `symptoms` string[]
    - `byGoal` object, nullable: Recommended panel and alternatives for the stated goals
    - `bySymptom` object, nullable: Panels, individual tests and explanations for the stated symptoms
    - `labFee` number: USD
    - `next` string: Suggested next tool call
    - `disclaimer` string

## Other responses

- `400`: Invalid input
- `429`: Rate limited

---

[API](https://skmtc.dev/test-well/apis/testwell-agent-api.md) · [All operations](https://skmtc.dev/test-well/apis/testwell-agent-api/llms.txt) · [OpenAPI document](https://skmtc.dev/test-well/apis/testwell-agent-api/revisions/6e260731dfa4?raw)
