Quick Summary
Problem-Based Charting (PBC) is a clinical documentation approach that organizes notes by patient problems instead of traditional note sections, and suggests diagnoses for each problem.
Problem-Based Charting (PBC) is supported for Web SDK and APIs only. The Mobile SDK and Headless Web SDK do not currently support PBC.
Overview
Problem-Based Charting (PBC) organizes clinical notes by patient problems instead of traditional note sections. When you use PBC, Suki generates two things:- Clinical note: Organized by each problem or diagnosis
- Structured artifacts: Suggested diagnoses with ICD-10 and IMO codes
- Easier to read: See everything about each problem in one place
- Better continuity: Includes existing problems from previous visits automatically
- Complete picture: Captures both old and new problems discussed during the visit
- Structured data: Generates standardized codes (ICD-10, IMO) for EHR integration
How To Enable Problem-Based Charting
To use PBC, follow these steps:- Mark a section as PBN: Set
isPBNSection: trueon one section in yourambientOptions - Provide diagnoses: Send existing diagnoses via the Context API when starting the session
- Retrieve results: Get generated diagnoses from the Structured Data API after the session
JavaScript
Python
Configuration Rules
When configuring PBC, follow these rules:Single PBN Section
Only one section can have
isPBNSection: true. If multiple sections are marked as PBN, the ambient session will fail to start.Default Behavior
If no section includes the
isPBNSection flag and the Assessment & Plan section (51847-2) is present, that section automatically becomes the PBN.Core Principles
Understanding these principles helps you use PBC effectively:ICD10 Source of Truth
ICD10 Source of Truth
The code is treated as the primary identifier for all clinical problems during processing.System Uses ICD10 For:
- Diagnosis identification and matching
- Clinical problem categorization
- Cross-session diagnosis continuity
- Normalization of other code types (, SNOMED)
Non-ICD10 codes are automatically converted to ICD10 equivalents when possible.
Best-Effort Generation
Best-Effort Generation
All diagnosis generation is done on a best-effort basis. The system prioritizes returning partial, useful information over failing an entire request due to an issue with a single data point.
Clean Slate Sessions
Clean Slate Sessions
In reambient scenarios, diagnoses from previous sessions are not automatically carried forward. You must provide the full context for each new session.
How It Works
PBC processes diagnoses in three steps:Provide Existing Diagnoses
You provide existing diagnoses when starting the session using the Context APIs.
Suki Analyzes Conversation
Suki’s AI analyzes the conversation and identifies new problems or updates to existing diagnoses.
Suki backend includes the ML-suggested problem name and returns standardized ICD-10 code, description, and IMO equivalent in the final output.
Providing Diagnoses
You provide existing patient diagnoses when starting a session using the Context APIs. These diagnoses serve as the starting point for PBC note generation. APIs to use:POST Context API
Provide initial diagnoses when starting a session
PATCH Update Context API
Update or add diagnoses during a session
JSON
Validation Rules
Each diagnosis in your request must follow these rules:- One code per diagnosis: Each diagnosis must have exactly one code (ICD10 or IMO)
- No mixed codes: A single diagnosis cannot contain multiple code types
- Code required: Every diagnosis must include a code
Input Processing
Suki processes diagnoses through normalization and deduplication: Normalization:- Non-ICD10 codes (IMO, SNOMED) are automatically converted to ICD10 using IMO APIs
- ICD10 is used as the source of truth for all diagnosis processing
- Diagnoses with the same ICD10 code are merged into one diagnosis
- Notes from merged diagnoses are combined into a single note
How Diagnoses Are Generated
During the session, Suki’s AI analyzes the conversation and takes one of three actions on the diagnoses you provided:- Update existing diagnosis: Modify the content if it was discussed
- Generate new diagnosis: Create a new diagnosis if a new problem was discussed
- Keep unchanged: Leave a diagnosis untouched if it wasn’t significantly discussed
Output Enrichment
For any diagnosis that was updated or newly generated, Suki enriches it with:- ICD10 code: Standard diagnosis code
- IMO code: Intelligent Medical Objects code
- Laterality: Left/right/bilateral information when applicable
- Post coordination flag: Indicates if the diagnosis requires additional modifiers
The IMO code returned in the output may be different from any IMO code that was sent in the input payload. This is normal—Suki uses the most accurate code based on the conversation content.
Retrieving Generated Diagnoses
After a session completes, retrieve the structured artifacts (including suggested diagnoses with ICD-10 and IMO codes) using the Structured Data APIs:Structured Data API
Get diagnoses for a specific session
Encounter Structured Data API
Get latest diagnoses for an encounter
Response Example
JSON
Handling Reambient Scenarios
In reambient scenarios, where a single patient encounter involves multiple recording sessions, understanding how context is managed is critical. Your Responsibilities: Because sessions don’t inherit context, you must provide the complete list of all relevant diagnoses for each new session. This includes:- Modified diagnoses: Any diagnoses that were changed by the provider in previous sessions
- New diagnoses: Any newly added diagnoses from previous sessions
- Existing diagnoses: Diagnoses from previous sessions that should be retained
After each session, retrieve the generated diagnoses using the Structured Data API, then include all relevant diagnoses (including any modifications) when starting the next session.
Best Practices
FAQs
How does the system handle reambient scenarios?
How does the system handle reambient scenarios?
In reambient scenarios, the system does not automatically carry forward diagnoses from previous sessions. You must provide the complete and current list of all relevant diagnoses for each new session.
How does the system handle non-ICD10 codes?
How does the system handle non-ICD10 codes?
The system uses IMO APIs to find the best possible ICD10 code equivalent for non-ICD10 codes. If a code cannot be mapped, that diagnosis is skipped.
How does diagnosis normalization work?
How does diagnosis normalization work?
The system normalizes all codes to ICD10 before processing. ICD10 is used as the source of truth for all diagnosis operations.
How does diagnosis deduplication work?
How does diagnosis deduplication work?
The system deduplicates diagnoses based on the ICD10 code. Diagnoses with the same ICD10 code are merged, and their notes are combined.
Why aren't all input diagnoses returned?
Why aren't all input diagnoses returned?
Only diagnoses that were updated or newly generated are returned. Diagnoses that weren’t discussed during the session are not included in the output.