Records Rocket Data Model
Understanding the core data structures in Records Rocket is key to leveraging our platform and API. Our system is built around a set of interconnected records, each with a specific purpose.
All records in our database share a set of base properties defined in BaseRecord:
id: A unique identifier for the record.recordType: The type of the record (e.g.,caseRecord,documentRecord).tenantId: The ID of the organization that owns the record, ensuring strict data isolation.status: The current status (active,archived,deleted).createdAt,updatedAt,createdBy,updatedBy: Auditing timestamps and user references.
Key Record Types
Here are the most important record types you'll interact with:
TenantRecord
Represents a customer organization. All other data is scoped to a tenant.
UserRecord
Represents an individual user account. Each user belongs to a tenant and has a specific role.
CaseRecord
This is the central container for an individual medical evaluation.
caseId: The unique ID for the case.title,description: Human-readable information about the case.caseType: The type of evaluation, such asIMEorPeerReview.
DocumentRecord
Represents a single file (e.g., a PDF of medical notes) uploaded to a case.
documentId: The unique ID for the document.caseId: Links the document back to its case.fileName,size,contentType: Original file metadata.processStatus: The status of the AI processing pipeline (uploaded,processing,completed,error).
PageRecord
Represents a single page within a DocumentRecord.
pageId: A unique identifier formatted as{documentId}-{pageNumber}.ocrText: The full text extracted from the page by our OCR engine.
EventRecord
Represents a single, discrete event extracted from the records by the AI, such as a doctor's visit, a surgery, or a prescription.
eventId: The unique ID for the event.eventDate: The date the event occurred, used for building the case timeline.eventRecordType: The category of the event (medical,legal,administrative).pageIds: An array of page IDs where this event was mentioned, linking it back to the source.
AnnotationRecord
Represents a user-created annotation, like a note or a bookmark, attached to a page or an event.
FindingRecord
Represents a single piece of evidence extracted by the ReportOrchestrator during the report generation process. Each finding is subject to user review before being included in a final report.
ReportRecord
Represents the final, generated narrative report, synthesized from a collection of approved FindingRecords.