Healthcare

Patient Medical Record JSON Example

A JSON example for a patient medical record — includes demographics, contact info, allergies, active medications, diagnoses, and insurance. Designed for health information systems and EHR APIs.

{
  "patientId": "pt_7GvNqKmXr4",
  "mrn": "MRN-20251104-0042",
  "demographics": {
    "firstName": "Ravi",
    "lastName": "Mehta",
    "dateOfBirth": "1996-08-14",
    "gender": "male",
    "bloodGroup": "B+",
    "nationality": "IN"
  },
  "contact": {
    "phone": "+91-98765-43210",
    "email": "ravi.mehta@example.com",
    "address": {
      "street": "42, Shyamal Cross Road",
      "city": "Ahmedabad",
      "state": "GJ",
      "postalCode": "380015",
      "country": "IN"
    },
    "emergencyContact": {
      "name": "Priya Mehta",
      "relationship": "spouse",
      "phone": "+91-98765-00001"
    }
  },
  "allergies": [
    {
      "substance": "Penicillin",
      "reaction": "Anaphylaxis",
      "severity": "high",
      "recordedAt": "2018-03-10"
    }
  ],
  "activeMedications": [
    {
      "name": "Metformin",
      "dosage": "500mg",
      "frequency": "twice-daily",
      "route": "oral",
      "prescribedBy": "Dr. Shah",
      "startDate": "2024-01-15"
    }
  ],
  "diagnoses": [
    {
      "code": "E11.9",
      "system": "ICD-10",
      "description": "Type 2 diabetes mellitus without complications",
      "status": "active",
      "diagnosedAt": "2024-01-12"
    }
  ],
  "insurance": {
    "provider": "Star Health Insurance",
    "policyNumber": "SHI-2024-00123456",
    "groupNumber": "GRP-TECH-001",
    "validUntil": "2026-03-31"
  },
  "lastUpdated": "2025-06-01T08:00:00Z",
  "recordVersion": 3
}

Field Reference

patientIdrequiredstringSystem-generated unique patient identifier (not the MRN)
mrnrequiredstringMedical Record Number — facility-assigned identifier, may differ across facilities
demographics.dateOfBirthrequiredstringISO 8601 date (YYYY-MM-DD) — never store age as a number (it changes every year)
allergiesoptionalarrayKnown allergies with substance, reaction, and severity — critical for medication safety
activeMedicationsoptionalarrayCurrent medications with dosage, frequency, and prescribing provider
diagnosesoptionalarrayActive and historical diagnoses with ICD codes for billing and clinical decision support
recordVersionrequirednumberOptimistic concurrency version — increment on every write to detect stale updates

Variants

Minimal RegistrationMinimal fields required for patient registration at check-in.
Minimal Registration
{
  "patientId": "pt_NewAdmit001",
  "mrn": "MRN-20260101-0101",
  "demographics": {
    "firstName": "Anita",
    "lastName": "Patel",
    "dateOfBirth": "1985-11-22",
    "gender": "female",
    "bloodGroup": "O+"
  },
  "contact": {
    "phone": "+91-98765-11111"
  },
  "allergies": [],
  "activeMedications": [],
  "diagnoses": [],
  "lastUpdated": "2026-01-01T09:00:00Z",
  "recordVersion": 1
}

Common Use Cases

  • Storing and retrieving patient demographics in a Hospital Information System (HIS)
  • Exchanging health data via HL7 FHIR REST API (Patient resource)
  • Pre-populating prescription forms with patient allergies and current medications
healthcareehrpatientfhirmedical

Validate or format this JSON

One click loads this exact example into the tool — no copy-paste needed. Format it, validate it, explore the tree, or generate TypeScript types instantly.

Frequently Asked Questions

This is a simplified example for learning purposes. HL7 FHIR (Fast Healthcare Interoperability Resources) has a specific JSON representation with resourceType, id, meta, and typed elements. For a production EHR integration, use the FHIR Patient resource schema at hl7.org/fhir/patient.html.

Transmit over TLS 1.2+ only. Encrypt sensitive fields at rest (especially SSN, date of birth, medical record details). Implement RBAC so only authorized roles see certain fields. Audit every access to PHI. In many countries this is legally required (HIPAA in the US, DISHA in India).

Always store date of birth — never age. Age must be recomputed on every read and varies by timezone. Storing age as a number leads to perpetually stale data. Calculate the display age client-side from dateOfBirth and the current date.

Related JSON Examples