generated: '2026-08-15' method: derived source: openapi/ritten-external-api-openapi.yaml note: Entity graph derived from OpenAPI components.schemas $ref links and Id reference fields. summary: entities: 93 ref_relationships: 38 id_reference_relationships: 16 core_entities: - Patient - Contact - Case - Program - Facility - Organization - Task - Encounter - InsurancePayer - FormDefinition identifier_convention: format: uuid example: 182c2e54-3494-4b85-aba5-038cf539d5bf external_id: Patients additionally resolvable by partner-assigned external id via getPatientByExternalId (GET /patients/external/{externalId}). tenancy: header: X-Ritten-Tenant note: Every entity is scoped to a single Ritten clinic tenant; the tenant is selected per request by header, not by a field on the entity. entities: - name: Insurance fields: 23 required: 0 - name: Case fields: 13 required: 0 - name: Patient fields: 13 required: 0 - name: Task fields: 12 required: 0 - name: FormDefinition fields: 12 required: 0 - name: PostCaseBody fields: 11 required: 1 - name: PatchCaseBody fields: 11 required: 0 - name: PatientDemographics fields: 11 required: 0 - name: PatientProgram fields: 10 required: 0 - name: Contact fields: 9 required: 0 - name: Payer fields: 9 required: 0 - name: Encounter fields: 8 required: 0 - name: PostOrganizationBody fields: 8 required: 2 - name: Address fields: 8 required: 0 - name: FieldDefinition fields: 8 required: 0 - name: EncounterType fields: 7 required: 0 - name: PostOrganizationAddress fields: 7 required: 0 - name: PostFacilityAddress fields: 7 required: 1 - name: CaseActionItem fields: 7 required: 0 - name: CaseContact fields: 7 required: 0 - name: ContactPoint fields: 7 required: 0 - name: PostTaskBody fields: 6 required: 2 - name: PatchTaskBody fields: 6 required: 0 - name: PatientForm fields: 6 required: 0 - name: Facility fields: 6 required: 0 - name: ClinicProgram fields: 6 required: 0 - name: Organization fields: 6 required: 0 - name: User fields: 6 required: 0 - name: CalendarEventCore fields: 6 required: 0 - name: DischargesReport fields: 6 required: 0 - name: SectionDefinition fields: 6 required: 0 - name: CaseNote fields: 5 required: 0 - name: PatientName fields: 5 required: 0 - name: Referral fields: 5 required: 0 - name: AdmissionsReport fields: 5 required: 0 - name: EncounterHistoryReport fields: 5 required: 0 - name: OAuthTokenRequest fields: 4 required: 4 - name: OAuthTokenResponse fields: 4 required: 3 - name: PatientFormField fields: 4 required: 0 - name: OrganizationMember fields: 4 required: 0 relationships: - from: PostPatientVital to: PostPatientVitalMeasurement type: has_many via: measurements - from: PostTaskBody to: TaskPriority type: has_one via: priority - from: PostTaskBody to: TaskStatus type: has_one via: status - from: PatchTaskBody to: TaskPriority type: has_one via: priority - from: PatchTaskBody to: TaskStatus type: has_one via: status - from: PostEncounterBody to: AttendanceType type: has_one via: attendanceType - from: Encounter to: AttendanceType type: has_one via: attendanceType - from: PatientForm to: PatientFormSection type: has_many via: sections - from: PatientFormSection to: PatientFormField type: has_many via: fields - from: ListTasks to: Task type: has_many via: tasks - from: Task to: TaskStatus type: has_one via: status - from: Task to: TaskPriority type: has_one via: priority - from: ListFacilities to: Facility type: has_many via: facilities - from: Facility to: Address type: has_one via: address - from: ListPrograms to: ClinicProgram type: has_many via: programs - from: ClinicProgram to: ProgramType type: has_one via: programType - from: ClinicProgram to: LevelOfCare type: has_many via: levelOfCare - from: ListOrganizations to: Organization type: has_many via: organizations - from: ListOrganizationMembers to: OrganizationMember type: has_many via: members - from: PostOrganizationBody to: PostOrganizationAddress type: has_one via: address - from: PostFacilityBody to: PostFacilityAddress type: has_one via: address - from: PostProgramBody to: ProgramType type: has_one via: programType - from: PostProgramBody to: LevelOfCare type: has_many via: levelOfCare - from: Case to: CaseContact type: has_one via: personSeekingTreatment - from: Case to: User type: has_one via: caseOwner - from: Case to: CaseContact type: has_many via: contacts - from: Case to: Program type: has_many via: potentialPrograms - from: CaseNote to: User type: has_one via: owner - from: ListPatients to: Patient type: has_many via: patients - from: Patient to: PatientName type: has_one via: name - from: Patient to: PatientProgram type: has_one via: latestClinicalProgram - from: Patient to: PatientProgram type: has_many via: programs - from: Insurance to: InsuranceRelationshipTypeEnum type: has_one via: relationship - from: Contact to: ContactOrganization type: has_many via: organizations - from: EventAuditReport to: User type: has_many via: users - from: FormDefinition to: SectionDefinition type: has_many via: sectionDefinitions - from: FormDefinition to: FormDefinitionSignatureRequirement type: has_many via: signatureRequirements - from: SectionDefinition to: FieldDefinition type: has_many via: fieldDefinitions id_reference_relationships: - from: PostEncounterBody to: Patient type: belongs_to via: patientId - from: PostEncounterBody to: EncounterType type: belongs_to via: encounterTypeId - from: Encounter to: Patient type: belongs_to via: patientId - from: Encounter to: EncounterType type: belongs_to via: encounterTypeId - from: PostPatientForm to: Encounter type: belongs_to via: encounterId - from: PatientForm to: Patient type: belongs_to via: patientId - from: PatientForm to: Encounter type: belongs_to via: encounterId - from: Task to: Patient type: belongs_to via: patientId - from: PatchProgramBody to: Facility type: belongs_to via: facilityId - from: PostProgramBody to: Facility type: belongs_to via: facilityId - from: PostCaseNoteBody to: User type: belongs_to via: userId - from: CaseNote to: Case type: belongs_to via: caseId - from: CaseActionItem to: Case type: belongs_to via: caseId - from: Referral to: Organization type: belongs_to via: organizationId - from: Insurance to: Payer type: belongs_to via: payerId - from: FormDefinitionSignatureRequirement to: FormDefinition type: belongs_to via: formDefinitionId