Patient data model

View field support, webhooks, and list parameters for each integration on the Supported Integrations page.

FieldTypeRequiredDescription
idstringNoUnique identifier for the patient
created_atstring (date-time)NoWhen the patient record was created (ISO-8601 / YYYY-MM-DDTHH:MM:SSZ format)
updated_atstring (date-time)NoWhen the patient record was last updated (ISO-8601 / YYYY-MM-DDTHH:MM:SSZ format)
namestringNoFull name of the patient
first_namestringNoGiven name of the patient
last_namestringNoFamily name of the patient
genderenumNoAdministrative gender of the patient Values: MALE, FEMALE, OTHER, UNKNOWN
birthdatestringNoDate of birth (YYYY-MM-DD)
is_deceasedbooleanNoWhether the patient is deceased
deceased_atstring (date-time)NoWhen the patient died (ISO-8601 / YYYY-MM-DDTHH:MM:SSZ format)
emailsHealthcareEmail[]NoEmail addresses of the patient
emails[].emailstringYes
emails[].typeenumNoValues: WORK, HOME, OTHER
telephonesHealthcareTelephone[]NoPhone numbers of the patient
telephones[].telephonestringYes
telephones[].typeenumNoValues: WORK, HOME, MOBILE, FAX, OTHER
addressobjectNoHome address of the patient
address.address1stringNo
address.address2stringNo
address.citystringNo
address.regionstringNo
address.postal_codestringNo
address.countrystringNo
languagestringNoPreferred language code of the patient
identifiersHealthcareIdentifier[]NoBusiness identifiers (e.g. MRN)
identifiers[].valuestringYesThe identifier value
identifiers[].typeenumNoThe kind of identifier Values: MRN, NPI, SSN, DRIVERS_LICENSE, PASSPORT, INSURANCE, OTHER
identifiers[].systemstringNoThe namespace/system URI that issued the identifier
practitioner_idsstring[]NoThe patient's primary care practitioners
is_activebooleanNoWhether the patient record is in active use
metadataHealthcareMetadata[]No
metadata[].idstringNo
metadata[].valueobjectNo
metadata[].namespacestringNo
metadata[].formatenumNoValues: TEXT, NUMBER, DATE, BOOLEAN, ARRAY, OBJECT
metadata[].extra_dataobjectNo
metadata[].slugstringNo

TypeScript

TypeScript
export type HealthcarePatient = {
	id?: string; // Unique identifier for the patient
	created_at?: string-time; // When the patient record was created (ISO-8601 / YYYY-MM-DDTHH:MM:SSZ format)
	updated_at?: string-time; // When the patient record was last updated (ISO-8601 / YYYY-MM-DDTHH:MM:SSZ format)
	name?: string; // Full name of the patient
	first_name?: string; // Given name of the patient
	last_name?: string; // Family name of the patient
	gender?: 'MALE' | 'FEMALE' | 'OTHER' | 'UNKNOWN'; // Administrative gender of the patient
	birthdate?: string; // Date of birth (YYYY-MM-DD)
	is_deceased?: boolean; // Whether the patient is deceased
	deceased_at?: string-time; // When the patient died (ISO-8601 / YYYY-MM-DDTHH:MM:SSZ format)
	emails?: []; // Email addresses of the patient
	telephones?: []; // Phone numbers of the patient
	address?: {
		address1?: string; 
		address2?: string; 
		city?: string; 
		region?: string; 
		postal_code?: string; 
		country?: string; 
	}; // Home address of the patient
	language?: string; // Preferred language code of the patient
	identifiers?: []; // Business identifiers (e.g. MRN)
	practitioner_ids?: string[]; // The patient's primary care practitioners
	is_active?: boolean; // Whether the patient record is in active use
	metadata?: [];
	raw?: any; // Raw data from integration
} 

Zod

Zod
import { z } from 'zod';

export const ZodHealthcarePatient = z.object({
	id: z.string().optional().describe("Unique identifier for the patient"),
	created_at: z.string-time().optional().describe("When the patient record was created (ISO-8601 / YYYY-MM-DDTHH:MM:SSZ format)"),
	updated_at: z.string-time().optional().describe("When the patient record was last updated (ISO-8601 / YYYY-MM-DDTHH:MM:SSZ format)"),
	name: z.string().optional().describe("Full name of the patient"),
	first_name: z.string().optional().describe("Given name of the patient"),
	last_name: z.string().optional().describe("Family name of the patient"),
	gender: z.enum("MALE", "FEMALE", "OTHER", "UNKNOWN").optional().describe("Administrative gender of the patient"),
	birthdate: z.string().optional().describe("Date of birth (YYYY-MM-DD)"),
	is_deceased: z.boolean().optional().describe("Whether the patient is deceased"),
	deceased_at: z.string-time().optional().describe("When the patient died (ISO-8601 / YYYY-MM-DDTHH:MM:SSZ format)"),
	emails: z.array().optional().describe("Email addresses of the patient"),
	telephones: z.array().optional().describe("Phone numbers of the patient"),
	address: z.object({
			address1: z.string().optional(),
			address2: z.string().optional(),
			city: z.string().optional(),
			region: z.string().optional(),
			postal_code: z.string().optional(),
			country: z.string().optional()
}).optional().describe("Home address of the patient"),
	language: z.string().optional().describe("Preferred language code of the patient"),
	identifiers: z.array().optional().describe("Business identifiers (e.g. MRN)"),
	practitioner_ids: z.array().optional().describe("The patient's primary care practitioners"),
	is_active: z.boolean().optional().describe("Whether the patient record is in active use"),
	metadata: z.array().optional(),

});

Python

Python
import dataclasses

@dataclasses.dataclass
class HealthcarePatientGender(str, Enum):
	MALE = 'MALE'
	FEMALE = 'FEMALE'
	OTHER = 'OTHER'
	UNKNOWN = 'UNKNOWN'

@dataclasses.dataclass
class PropertyHealthcarePatientAddress:
	address1: Optional[str]
	address2: Optional[str]
	city: Optional[str]
	region: Optional[str]
	postal_code: Optional[str]
	country: Optional[str]

@dataclasses.dataclass
class HealthcarePatient:
	"""Unique identifier for the patient"""
	id: Optional[str]
	"""When the patient record was created (ISO-8601 / YYYY-MM-DDTHH:MM:SSZ format)"""
	created_at: Optional[str]
	"""When the patient record was last updated (ISO-8601 / YYYY-MM-DDTHH:MM:SSZ format)"""
	updated_at: Optional[str]
	"""Full name of the patient"""
	name: Optional[str]
	"""Given name of the patient"""
	first_name: Optional[str]
	"""Family name of the patient"""
	last_name: Optional[str]
	"""Administrative gender of the patient"""
	gender: Optional[HealthcarePatientGender]
	"""Date of birth (YYYY-MM-DD)"""
	birthdate: Optional[str]
	"""Whether the patient is deceased"""
	is_deceased: Optional[bool]
	"""When the patient died (ISO-8601 / YYYY-MM-DDTHH:MM:SSZ format)"""
	deceased_at: Optional[str]
	"""Email addresses of the patient"""
	emails: Optional[PropertyHealthcarePatientEmails]
	"""Phone numbers of the patient"""
	telephones: Optional[PropertyHealthcarePatientTelephones]
	"""Home address of the patient"""
	address: Optional[PropertyHealthcarePatientAddress]
	"""Preferred language code of the patient"""
	language: Optional[str]
	"""Business identifiers (e.g. MRN)"""
	identifiers: Optional[PropertyHealthcarePatientIdentifiers]
	"""The patient's primary care practitioners"""
	practitioner_ids: Optional[List[List[str]]]
	"""Whether the patient record is in active use"""
	is_active: Optional[bool]
	metadata: Optional[PropertyHealthcarePatientMetadata]
Are we missing anything? Let us know
Was this page helpful?