Skip to main content
Use this endpoint to search for practitioners within your tenant. You can filter by name (partial match), specialty, NPI (exact match), or active status. Results are paginated — use count and cursor to page through large result sets.

Request

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

Headers

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

Query Parameters

name
string
Filter by name using a partial, case-insensitive match against first name and last name.
specialty
string
Filter by specialty (partial match).
npi
string
Filter by National Provider Identifier (exact match).
active
boolean
Filter by active status (true or false).
count
integer
Number of results per page. Default: 20. Maximum: 100.
cursor
string
Opaque pagination cursor from the previous response.

Response

Returns 200 OK with a paginated list of practitioners.
data.data
array
Array of practitioner objects matching the search criteria.
data.total
integer
Total number of practitioners matching the query.
data.cursor
string
Cursor for the next page. null when there are no more results.
data.hasMore
boolean
true if additional pages of results exist.
meta
object
Standard response metadata.

Examples

curl

curl "https://api.clinikapi.com/v1/practitioners?specialty=Cardiology&count=10" \
  -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.practitioners.search({
  specialty: "Cardiology",
  count: 10,
});

for (const p of results.data.data) {
  console.log(p.id, `${p.firstName} ${p.lastName}`, p.npi);
}