Skip to main content
Use this endpoint to search across submitted intake forms. Filter by patient, status, or date range to narrow results. Results are returned in reverse-chronological order by default and can be paginated using the cursor parameter.

Request

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

Headers

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

Query parameters

patientId
string
Filter intakes to a specific patient (e.g. pt_abc123).
status
string
Filter by intake status. One of: in-progress, completed, amended, stopped.
dateFrom
string
Return only intakes authored on or after this date (YYYY-MM-DD).
dateTo
string
Return only intakes authored on or before this date (YYYY-MM-DD).
sort
string
Sort order. Use -date (default) for newest first or date for oldest first.
count
number
Number of results per page. Maximum: 100. Defaults to 20.
cursor
string
Opaque pagination cursor from the previous response. Omit to start from the beginning.

Response

Returns 200 OK with a paginated list of intake resources.
data
array
Array of intake objects matching the search filters.
data[].id
string
Intake ID.
data[].patientId
string
Patient reference.
data[].status
string
Intake status.
data[].authored
string
ISO 8601 timestamp of when the intake was authored.
meta
object
Standard response metadata including requestId, timestamp, status, and rate-limit fields.
meta.nextCursor
string
Cursor for the next page. Absent when there are no more results.

Examples

curl

curl "https://api.clinikapi.com/v1/intakes?patientId=pt_abc123&status=completed&sort=-date" \
  -H "x-api-key: clk_live_abc123"

TypeScript SDK

import { Clinik } from '@clinikapi/sdk';

const clinik = new Clinik(process.env.CLINIKAPI_SECRET_KEY!);

const { data, meta } = await clinik.intakes.search({
  patientId: 'pt_abc123',
  status: 'completed',
  sort: '-date',
});

console.log(data.length);
console.log(meta.nextCursor);