Skip to main content
Use this endpoint to search for observations within your tenant. Filter by patient, status, or date range to find vitals, lab values, and clinical measurements. Results are paginated.

Request

GET https://api.clinikapi.com/v1/observations

Headers

x-api-key
string
required
Your ClinikAPI secret key (clk_live_* or clk_test_*).

Query Parameters

patientId
string
Filter observations by patient ID.
status
string
Filter by status (e.g. final, preliminary).
dateFrom
string
Return observations on or after this date (YYYY-MM-DD).
dateTo
string
Return observations on or before this date (YYYY-MM-DD).
sort
string
Sort field. Prefix with - for descending order (e.g. -effectiveDateTime).
count
integer
Results per page. Default: 20. Maximum: 100.
cursor
string
Pagination cursor from the previous response.

Response

Returns 200 OK with a paginated list of observations.
data.data
array
Array of observation objects.
data.total
integer
Total matching observations.
data.cursor
string
Cursor for the next page.
data.hasMore
boolean
true if more pages exist.
meta
object
Standard response metadata.

Examples

curl

curl "https://api.clinikapi.com/v1/observations?patientId=pt_abc123&status=final&sort=-effectiveDateTime" \
  -H "x-api-key: clk_live_abc123"

TypeScript SDK

import { ClinikAPI } from "@clinikapi/sdk";

const client = new ClinikAPI({ apiKey: "clk_live_abc123" });

const results = await client.observations.search({
  patientId: "pt_abc123",
  status: "final",
  sort: "-effectiveDateTime",
});