DialogMD Documentation

Welcome to DialogMD, a HIPAA-compliant platform for building intelligent healthcare chatflows without code.

What is DialogMD?

DialogMD is a visual chatflow builder designed specifically for healthcare organizations. Create conversational experiences for appointment booking, symptom triage, patient intake, and more—all while maintaining HIPAA compliance.

Key Features

  • Visual Flow Builder: Drag-and-drop interface for creating complex conversation flows
  • HIPAA Compliant: Built-in security features and audit logging
  • AI-Powered Agents: Integrate with GPT-4, Claude, and other LLMs
  • Custom Integrations: Connect to your EHR, scheduling system, and APIs
  • Multi-Tenant Architecture: Manage multiple organizations with data isolation

Getting Started

Follow these steps to create your first chatflow in DialogMD.

1Create an Account

Sign up for a DialogMD account at /auth/sign-up. You'll need to verify your email and accept the HIPAA Business Associate Agreement.

2Set Up Your Tenant

Create your organization profile. This will be your workspace for managing flows, agents, and configurations.

3Create Your First Flow

Navigate to the dashboard and click "Create Flow". Choose from templates or start from scratch.

4Configure and Test

Add nodes to your flow, configure their properties, and use the test panel to see your chatflow in action.

5Deploy and Share

Publish your flow and share the link with patients or embed it on your website.


Flow Builder

The Flow Builder is the heart of DialogMD. Use it to visually design conversation flows by connecting nodes together.

Interface Overview

  • Canvas: The main work area where you place and connect nodes
  • Node Palette: Left sidebar containing all available node types
  • Properties Panel: Configure selected node settings
  • Test Panel: Right sidebar for testing your flow in real-time
  • Toolbar: Save, publish, and manage flow settings

Creating a Flow

  1. Drag nodes: Drag node types from the palette onto the canvas
  2. Connect nodes: Click and drag from a node's output handle to another node's input
  3. Configure nodes: Double-click a node or click the edit icon to open properties
  4. Test flow: Use the test panel to simulate conversations
  5. Save and publish: Save your work and publish when ready

Important

Always test your flows thoroughly before publishing. Use the test panel to verify all paths work correctly and handle edge cases.


Node Types

Message Node

Displays a message to the user. Supports markdown formatting, variable interpolation, and media.

Configuration

PropertyDescription
messageThe text content to display
variablesUse {variableName} to insert variable values
delayOptional delay before showing message (milliseconds)

Example Use Cases

  • Welcome messages
  • Instructions and explanations
  • Confirmation messages
  • Dynamic content with variable data

User Input Node

Collects input from users with support for multiple input types including text, email, phone, date, ratings, and more.

Input Types

  • Text: Single or multi-line text input
  • Email: Email address with validation
  • Phone: Phone number with country code selector
  • Code: Numeric, alphabetic, or alphanumeric codes (OTP, verification)
  • Rating: Star rating (0-5 or configurable)
  • Date: Date picker
  • Time: Time picker
  • Select: Single selection from dropdown
  • Multi-select: Multiple selections
  • Address: Full address with country autocomplete

Configuration

PropertyDescription
promptQuestion or instruction to show user
inputTypeType of input to collect
variableNameVariable name to store the response
requiredWhether input is required
buttonTextCustom text for submit button (default: "Reply")

Agent Node

Integrates AI agents powered by LLMs like GPT-4, Claude, or Llama. Configure system prompts, temperature, and tools for intelligent responses.

Configuration

PropertyDescription
agentIdSelect configured agent from your library
contextAdditional context to provide the agent
outputVariableVariable to store agent's response
disableUserReplyAuto-continue without user input
hideOutputHide agent response from user (store only)

Use Cases

  • Symptom triage and assessment
  • Answering patient questions
  • Data extraction and classification
  • Appointment scheduling assistance

Function Node

Execute custom JavaScript code to manipulate variables, perform calculations, or implement custom logic.

Available Functions

  • getVariable(name) - Get variable value
  • setVariable(name, value) - Set variable value
  • today() - Get today's date
  • now() - Get current timestamp
  • uuid() - Generate unique ID
  • parseJSON(str) - Parse JSON safely

Example

// Calculate age from birthdate
const birthdate = getVariable('birthdate')
const today = new Date()
const birth = new Date(birthdate)
const age = today.getFullYear() - birth.getFullYear()
setVariable('age', age)

// Determine if patient is eligible
if (age >= 18) {
  setVariable('eligible', true)
} else {
  setVariable('eligible', false)
}

API Node

Make HTTP requests to external APIs or your EHR system. Extract data from responses and store in variables.

Configuration

PropertyDescription
apiConfigIdSelect API configuration
endpointAPI endpoint path
methodHTTP method (GET, POST, PUT, DELETE)
bodyRequest body (supports variable interpolation)
responseMappingMap response fields to variables using JSONPath

Branching Node

Create conditional logic to route conversations based on variable values or conditions.

Configuration

Define conditions using JavaScript expressions. Each condition creates a new output path.

// Example conditions:
variables.age >= 18
variables.symptoms.includes('fever')
variables.urgency === 'high'

Appointment Booking Node

Enable patients to book appointments directly in the conversation. Integrates with your scheduling API.

Features

  • Provider selection
  • Date picker with available dates
  • Time slot selection
  • Automatic confirmation
  • Calendar integration

Agents

Agents are AI-powered assistants that can understand natural language and respond intelligently. Configure agents in your library and reuse them across multiple flows.

Creating an Agent

  1. Navigate to Agents: Go to Dashboard → Agents
  2. Click "Create Agent"
  3. Configure Agent:
    • Name and description
    • Select LLM model (GPT-4, Claude, etc.)
    • Set system prompt
    • Configure temperature and max tokens
    • Add tools and functions if needed
  4. Test: Use the test interface to validate responses
  5. Save: Agent is now available in your library

Best Practices

  • Clear Instructions: Write detailed system prompts that explain the agent's role
  • Context: Provide relevant context about the conversation in the agent node
  • Temperature: Use lower values (0.1-0.3) for factual responses, higher (0.7-0.9) for creative tasks
  • Safety: Include guidelines about HIPAA compliance and PHI handling in prompts

Environments

Environments allow you to maintain separate configurations for development, staging, and production.

Environment Types

Development

Use for building and testing new flows. Connect to test APIs and use sandbox credentials.

Staging

Pre-production environment for final testing with production-like data and configurations.

Production

Live environment serving real patients. Use production credentials and monitor carefully.


Credentials

Securely store API keys, tokens, and authentication credentials for your integrations.

Credential Types

  • API Key: Simple key-based authentication
  • Bearer Token: OAuth bearer tokens
  • Basic Auth: Username and password
  • OAuth 2.0: Full OAuth flow credentials
  • Custom: Custom header-based authentication

Security Notice

Credentials are encrypted at rest and in transit. Never share credentials or commit them to code. Use environment-specific credentials.


API Configurations

Configure external APIs to integrate with your EHR, scheduling system, or other healthcare services.

Setting Up an API

  1. Create Configuration: Name your API and provide base URL
  2. Add Credentials: Link authentication credentials
  3. Configure Endpoints: Define endpoints, methods, and parameters
  4. Test Connection: Verify API connectivity
  5. Environment Setup: Configure for each environment

MCP Servers & Tools

Model Context Protocol (MCP) servers provide tools and resources that AI agents can use to access external data and perform actions.

What is MCP?

MCP is a standardized protocol for connecting AI models to external tools, databases, and APIs. It enables agents to perform actions like searching databases, calling APIs, or accessing files.

Use Cases

  • Give agents access to patient databases
  • Enable appointment booking capabilities
  • Connect to medical knowledge bases
  • Integrate with lab result systems

Themes

Customize the look and feel of your chatflows to match your brand.

Theme Options

SettingDescription
Primary ColorMain brand color for buttons and accents
Secondary ColorSecondary accent color
Font FamilyCustom font for messages
Chat Bubble StyleRounded, square, or custom border radius
LogoCustom logo to display in chat header

Security & Compliance

DialogMD is built with healthcare security and HIPAA compliance as top priorities.

HIPAA Compliance

  • End-to-end encryption for all data in transit and at rest
  • Comprehensive audit logging of all PHI access
  • Role-based access control (RBAC)
  • Automatic session timeout and re-authentication
  • Business Associate Agreement (BAA) included

Data Protection

  • Multi-tenant Isolation: Complete data separation between organizations
  • Encryption: AES-256 encryption for data at rest, TLS 1.3 for data in transit
  • Backup & Recovery: Automated daily backups with point-in-time recovery
  • Monitoring: 24/7 security monitoring and threat detection

Best Practices

Flow Design

  • Keep it Simple: Start with the happy path, then add edge cases
  • Clear Messages: Use plain language and avoid medical jargon when possible
  • Error Handling: Always include error nodes and provide helpful messages
  • Test Thoroughly: Test all conversation paths before publishing
  • User Experience: Don't ask for information you already have

Variables

  • Naming: Use descriptive camelCase names (e.g., patientFirstName)
  • Scope: Variables persist throughout the conversation
  • Privacy: Be mindful of PHI in variable names and values
  • Validation: Always validate user input before storing

Performance

  • API Calls: Minimize unnecessary API calls
  • Agent Usage: Use agents strategically for complex tasks only
  • Caching: Cache static data when possible
  • Testing: Use development environment for testing

© 2025 DialogMD. All rights reserved.