Passer au contenu

Site settings

How EDFlow site settings work: allowed ranges, settings locked in production, privacy-reducing changes, approvals, history and revert, configuration transfer, and the full settings reference.

Cette page n'est pas encore offerte en français; elle est affichée en anglais.

Every site setting has a default, an allowed range, a plain explanation and a history. The table at the bottom of this page is generated from the same specification the admin forms and the server use, so it is always current.

Renseignements sur l'hôpital : noms en français et en anglais, adresse, numéros de téléphone, Wi-Fi et lien du portail patient.
WebÉcran affiché en anglaisCapturée à partir de la version 7c7f41f le 27 septembre 2026

How changes are checked

  • Ranges: values outside the allowed range are refused by the server, not just the form.
  • Locked: some settings are fixed everywhere (for example MFA for administrators) or fixed in production (MFA for all staff).
  • Privacy-reducing: turning on something that shows more (named clinician metrics, room labels, detailed lock-screen text) needs a typed confirmation and a fresh sign-in check, and is audited with before and after values.
  • Trust anchors: the main phone, patient portal URL, Maps link and the patient-relations and privacy-office contacts need a second approver, because patients rely on them.
  • Every change goes through one path, so the same checks apply in the UI, imports and reverts.

History and revert

Settings → History lists every version of the site's settings and catalogues with who, when and what changed. Revert creates a new version with the old values, under the same checks.

Configuration transfer

Export the site's configuration (settings, catalogues, content, request and code types, zones; never patient data, keys or users) as a signed file, and import it into another site with a diff preview. The import applies all or nothing. Use it to promote a tested configuration to production or to clone a site.

One search box over users, invites, content, request and code types, tests, sources and settings keys, filtered by what you can open. Patients are never searched here.

Setting groups

GroupPage
Hospital informationHospital information
Zones, beds, shifts, reassessment intervalsZones, beds and shifts
Request types and service levelsRequest types
Code typesCode types
Tests, benchmarks and estimatesTests and benchmarks
Content, tasks and going-home templatesPatient content
LanguagesLanguages
Privacy, access and retentionPrivacy and retention
NotificationsNotifications
Waiting-room displayWaiting-room display
AIAI

Every setting

ParamètrePar défautValeurs permisesEffet
flow.piaSourceattending_assignedattending_assigned, explicitWhich event counts as the physician initial assessment (NACRS PIA only when explicit).
flow.piaRoles["attending","resident","nurse_practitioner"]arrayClinician types whose assignment counts as the PIA.
flow.assignmentNotifyHoldMinutes105–15 minutesHow long a provider assignment is held before the patient is told (D-25).
flow.seenInference.firstOrderByAssignedtruebooleanThe assigned clinician's first order infers "seen".
flow.seenInference.consultRequesttruebooleanA consult request infers "seen".
flow.seenInference.dispositiontruebooleanA disposition infers "seen".
flow.reassessmentInference.newOrderAfterAllBacktruebooleanA new order after all results are back infers reassessment (D-26).
flow.reassessmentInference.consultRequesttruebooleanA consult request infers reassessment.
flow.reassessmentInference.noteSignedtruebooleanA signed note infers reassessment.
flow.reassessmentInference.procedureAreatruebooleanA move to a procedure area infers reassessment.
flow.resultComplete.labresultedin_lab, in_progress, performed, preliminary, resultedLab status that counts as "Back".
flow.resultComplete.imagingpreliminaryin_lab, in_progress, performed, preliminary, resultedImaging status that counts as "Back" (D-28).
flow.resultComplete.cardiologyperformedin_lab, in_progress, performed, preliminary, resultedCardiology status that counts as "Back".
flow.resultComplete.imagingByModality[]arrayPer-modality imaging thresholds, e.g. X-ray at performed where ED physicians read their own films.
flow.resultsReviewedCountsForImagingtruebooleanAn imaging order with results reviewed counts as "Back".
flow.manualProfilelitelite, fullManual-mode depth at sites without a feed (D-46).
flow.manualStaleMinutes9030–240 minutesManual-lite prompt after this long without an update.
flow.noUpdateAlertHours124–24 hours"No updates" alert for the charge nurse (D-50).
flow.observationIsCdufalsebooleanObservation happens in a clinical decision unit.
imaging.serviceHours[]arrayModality service hours; empty means 24/7 (D-28).
imaging.downtime[]arrayCurrent imaging downtime per modality (set from W-S06).
results.displayDelayMinutes00–30 minutesDelay before a completed result shows as "Back" to the patient.
results.holdAllowedtruebooleanClinicians may hold results (D-29).
lifecycle.deceasedPauseHours241–72 hoursPause length after a deceased disposition (D-21).
reassessment.intervals.ctas2155–240 minutesWaiting-room reassessment interval for CTAS 2 (D-53).
reassessment.intervals.ctas3305–240 minutesWaiting-room reassessment interval for CTAS 3.
reassessment.intervals.ctas4605–240 minutesWaiting-room reassessment interval for CTAS 4.
reassessment.intervals.ctas51205–240 minutesWaiting-room reassessment interval for CTAS 5.
cards.autoPrinttruebooleanVisit cards print automatically at the print station.
cards.printAtafter_triageafter_triage, registrationWhen the card prints (D-43).
cards.formcardcard, wristband_labelCard or wristband label (discouraged; forces the date-of-birth check on every device, D-51). (Réduit la confidentialité)
cards.nameDisplayinitialsinitials, first_initial, noneName printed on the visit card. (Réduit la confidentialité)
cards.shortUrl—stringPrinted "go to" URL on the card; https on a trusted domain. (Réduit la confidentialité)
tasks.urineMinAge40–10 age_yearsMinimum age for the urine task T-01 (D-44).
tasks.derivedDelayMinutes30–10 minutesDelay before derived tasks appear.
tasks.consentStylewrittenwritten, verbalConsent task wording (T-02).
tasks.consentWho{"en":"Your nurse","fr":"Votre infirmière ou infirmier"}objectWho explains the test in the verbal consent task.
tasks.pregnancyCheckAges.min1210–60 age_yearsYoungest age for the pregnancy check T-05.
tasks.pregnancyCheckAges.max5510–60 age_yearsOldest age for the pregnancy check T-05.
capacity.treatmentSpaces301–500 countTreatment-space capacity, the occupancy denominator (F-08.3).
privacy.dataProfilestandardstandard, minimalData minimization profile (EHR §11.3). (Réduit la confidentialité)
access.patientGraceHours720–168 hoursHow long patient access lasts after departure (D-05). (Réduit la confidentialité)
access.familyGraceMinutes1200–1440 minutesHow long family links last after departure. (Réduit la confidentialité)
retention.operationalWindowDays307–90 daysDays PHI is kept before de-identification (F-21.2). (Réduit la confidentialité)
retention.auditDays730730–3650 daysAudit log retention. (Réduit la confidentialité)
retention.analyticsDays730365–2555 daysDe-identified analytics retention. (Réduit la confidentialité)
access.guardianAge160–18 age_yearsGuardian mode applies below this age. (Réduit la confidentialité)
access.youthConfidentialAges.min1210–18 age_yearsYoungest age for youth-confidential mode (D-43). (Réduit la confidentialité)
access.youthConfidentialAges.max1710–18 age_yearsOldest age for youth-confidential mode. (Réduit la confidentialité)
access.recipientPrompttruebooleanTriage asks who receives the card (D-43). (Réduit la confidentialité)
access.visitCodeSourceedflowedflow, ehr_visit_numberRandom codes or the EHR visit number (only with attested non-sequential numbers; never under minimal). (Réduit la confidentialité)
retention.safetyRecordYears102–30 yearsRetention of care records (D-36). (Réduit la confidentialité)
sharing.enabledtruebooleanPatients can share with family. (Réduit la confidentialité)
sharing.maxLinks51–5 countActive family links per visit. (Réduit la confidentialité)
sharing.maxDevicesPerLink31–5 countDevices per family link (D-14). (Réduit la confidentialité)
family.showPhotosfalsebooleanCare-team photos in the family view. (Réduit la confidentialité)
careTeam.namePolicyfirst_last_initialfirst_last_initial, first_onlyHow non-physician staff names show to patients (physicians always "Dr. First Last"). (Réduit la confidentialité)
careTeam.allowPhotostruebooleanStaff may opt in to show photos. (Réduit la confidentialité)
careTeam.photoApprovaltruebooleanPhotos need manager approval. (Réduit la confidentialité)
careTeam.showOtherRolestruebooleanShow roles beyond physician and nurse. (Réduit la confidentialité)
patient.showRoomLabelfalsebooleanShow the room or bed label to the patient. (Réduit la confidentialité)
careTeam.showTriageNurseNamefalsebooleanShow the triage nurse's name. (Réduit la confidentialité)
bigBoard.nameDisplayinitialsinitials, first_last_initialNames on big-board stations. (Réduit la confidentialité)
privacy.maskConfidentialNamesOnBoardtruebooleanMask confidential names on the board. (Réduit la confidentialité)
estimates.hideBeforePiaForCtas[1,2]arrayCTAS levels whose estimate is hidden before the patient is seen (SR-07).
estimates.showBoardingEstimatefalsebooleanShow the boarding estimate (D-32).
estimates.streamDimensiontruebooleanUse the stream in triage-to-seen buckets (D-33).
avs.enabledtruebooleanAfter-visit summaries are available.
avs.allowVisitReasonfalsebooleanThe AVS may state the visit reason. (Réduit la confidentialité)
avs.medicationsSectionoffoff, prescribers_attestedAVS medicines section with prescriber attestation (D-35).
analytics.clinicianMetricsfalsebooleanClinician-level metrics (EHR §12). (Réduit la confidentialité)
analytics.namedClinicianMetricsfalsebooleanNamed clinician metrics; requires clinician metrics (D-20). (Réduit la confidentialité)
analytics.nurseMetricsfalsebooleanNurse self-view metrics. (Réduit la confidentialité)
analytics.minCell55–20 countSmall-cell suppression threshold. (Réduit la confidentialité)
security.mfaRequiredForAlltruebooleanMFA for every password sign-in (locked on in production, D-13). (Réduit la confidentialité)
security.mfaRequiredForAdminstruebooleanMFA for manager, privacy and integration roles (locked on everywhere). (Verrouillé, Réduit la confidentialité)
security.staffIdleLockMinutes155–60 minutesStaff idle lock. (Réduit la confidentialité)
security.staffSessionHours128–16 hoursStaff absolute session lifetime. (Réduit la confidentialité)
security.staffEmailDomains[]arrayInvite domains that need no approval (D-64). (Réduit la confidentialité)
security.guestNetworkPrefixes[]arrayGuest-network prefixes named in breaker alerts, never hard-blocked. (Réduit la confidentialité)
sso.allowedDomains[]arrayEntra ID sign-in domains. (Réduit la confidentialité)
sso.allowedTenants[]arrayEntra ID tenant ids (guests always refused). (Réduit la confidentialité)
research.surveyConsentEnabledfalsebooleanOffer the research consent on the survey. (Réduit la confidentialité)
training.enabledfalsebooleanTraining mode is available at this site (F-33.3).
estimates.windowWeeks124–26 weeksSample window for estimates (F-05.3).
estimates.minSamples2010–100 countMinimum samples per ladder level.
estimates.flowDefaults[{"dimension":"","metricKey":"flow.arrival_to_triage","p50":10,"p75":15,"p90":30},{"dimension":"1","metricKey":"flow.triage_to_seen","p50":0,"p75":0,"p90":5},{"dimension":"2","metricKey":"flow.triage_to_seen","p50":15,"p75":25,"p90":45},{"dimension":"3","metricKey":"flow.triage_to_seen","p50":60,"p75":90,"p90":180},{"dimension":"4","metricKey":"flow.triage_to_seen","p50":90,"p75":120,"p90":240},{"dimension":"5","metricKey":"flow.triage_to_seen","p50":90,"p75":135,"p90":240},{"dimension":"1","metricKey":"flow.triage_to_pia","p50":0,"p75":0,"p90":5},{"dimension":"2","metricKey":"flow.triage_to_pia","p50":15,"p75":25,"p90":45},{"dimension":"3","metricKey":"flow.triage_to_pia","p50":60,"p75":90,"p90":180},{"dimension":"4","metricKey":"flow.triage_to_pia","p50":90,"p75":120,"p90":240},{"dimension":"5","metricKey":"flow.triage_to_pia","p50":90,"p75":135,"p90":240},{"dimension":"","metricKey":"flow.seen_to_first_order","p50":15,"p75":25,"p90":45},{"dimension":"","metricKey":"flow.seen_to_decision_no_tests","p50":30,"p75":45,"p90":90},{"dimension":"","metricKey":"flow.testing","p50":120,"p75":160,"p90":240},{"dimension":"","metricKey":"flow.results_to_reassessment","p50":30,"p75":45,"p90":90},{"dimension":"","metricKey":"flow.boarding","p50":360,"p75":720,"p90":1440},{"dimension":"","metricKey":"flow.discharge_to_cleared","p50":20,"p75":30,"p90":60},{"dimension":"","metricKey":"flow.cleared_to_departure","p50":5,"p75":10,"p90":20}]arrayDefault flow benchmarks (Appendix B.4).
requests.slaMultiplier.urgent10.5–2 multiplierSLA multiplier for urgent requests (F-09.6).
requests.slaMultiplier.high10.5–2 multiplierSLA multiplier for high requests (F-09.6).
requests.slaMultiplier.normal10.5–2 multiplierSLA multiplier for normal requests (F-09.6).
requests.slaMultiplier.low10.5–2 multiplierSLA multiplier for low requests (F-09.6).
requests.maxPerHour121–60 countNon-urgent requests per visit per hour.
requests.urgentGoingNowMinutes53–10 minutes"Going now" pauses escalation this long (D-23).
requests.excludeTriageFromComfortfalsebooleanKeep the triage nurse out of comfort routing (D-37).
codes.notifyThrottleMinutes3015–120 minutesDelay-notice push throttle per patient.
codes.autoNotifyFromFeedfalsebooleanFeed codes post the notice without a prompt (never skips the subject step).
codes.edRespondsOutsidefalsebooleanPrompt the charge nurse for codes outside the ED.
codes.pagingEdLocations[]arrayPaging locations inside the ED.
volume.reviewAfterHours41–12 hoursPrompt to review the volume level.
volume.acceptFeedLevelfalsebooleanApply the feed's volume level directly.
volume.thresholds.busy.waiting121–500 countVolume suggestion threshold: busy waiting (F-08.3).
volume.thresholds.busy.boarding81–500 countVolume suggestion threshold: busy boarding (F-08.3).
volume.thresholds.busy.occupancy0.950.1–5 ratioVolume suggestion threshold: busy occupancy (F-08.3).
volume.thresholds.busy.waitRatio1.250.1–10 ratioVolume suggestion threshold: busy waitRatio (F-08.3).
volume.thresholds.veryBusy.waiting201–500 countVolume suggestion threshold: veryBusy waiting (F-08.3).
volume.thresholds.veryBusy.boarding121–500 countVolume suggestion threshold: veryBusy boarding (F-08.3).
volume.thresholds.veryBusy.occupancy1.10.1–5 ratioVolume suggestion threshold: veryBusy occupancy (F-08.3).
volume.thresholds.veryBusy.waitRatio1.750.1–10 ratioVolume suggestion threshold: veryBusy waitRatio (F-08.3).
analytics.ontarioTargets.admitted48030–2880 minutesOntario target, admitted (D-48).
analytics.ontarioTargets.nonAdmittedHigh48030–2880 minutesOntario target, non-admitted CTAS 1–3.
analytics.ontarioTargets.nonAdmittedLow24030–2880 minutesOntario target, non-admitted CTAS 4–5.
analytics.ontarioTargets.emsOffload305–240 minutesOntario target, EMS offload.
notifications.pushtruebooleanPush notifications (effective only when the provider is configured). (Réduit la confidentialité)
notifications.patientSmstruebooleanPatient SMS updates (US sub-processor, Q-15). (Réduit la confidentialité)
notifications.familySmstruebooleanFamily SMS updates. (Réduit la confidentialité)
notifications.emailtruebooleanPatient summary-link email. (Réduit la confidentialité)
notifications.pushPreviewDefaultgenericgeneric, detailedDefault push preview (D-11). (Réduit la confidentialité)
notifications.pushPerHour61–20 countPush budget per patient per hour.
notifications.smsPerDay30–10 countSMS budget per patient per day.
notifications.staffCodePushfalsebooleanStaff push when a code is called (D-38).
notifications.staffBedInPushfalsebooleanBed label in staff push text. (Réduit la confidentialité)
notifications.brandedLabelApprovedfalsebooleanThe privacy office approved the branded SMS and push label (BR-13). (Réduit la confidentialité)
languages.safetyLocales[]arrayUp to five safety locales (D-52).
feed.delayedAfterMinutes51–60 minutesFeed is "delayed" after this silence (F-16.1).
feed.downAfterMinutes152–240 minutesFeed is "down" after this silence.
integration.alertEmails[]arrayRecipients of feed and integration alerts (≤ 10). (Réduit la confidentialité)
display.accesspublicpublic, keyWaiting-room display is public or needs a display key. (Réduit la confidentialité)
display.showTypicalWaitfalsebooleanShow the official typical wait (D-18).
display.typicalWaitSourcefeedfeed, manualSource of the typical wait.
display.manualTypicalWait—objectManual typical wait with the time it was set.
display.languageModealternatealternate, side_by_side, english_onlyDisplay language mode: English and French in turn, side by side, or English only (owner, 2026-09-26).
display.orientationlandscapelandscape, portraitDisplay orientation.
display.allowEmbedfalsebooleanAllow framing by the embed origins. (Réduit la confidentialité)
display.embedOrigins[]arrayExact https origins allowed to frame the display (never "*"). (Réduit la confidentialité)
display.slideSlugs[]arrayDisplay loop slides.
integration.api.readsfalsebooleanAllows encounters, care-team, requests and tasks reads at this site (F-34.4). (Réduit la confidentialité)
integration.api.includeCodeAreatruebooleanCode alerts in the API include the area label. (Réduit la confidentialité)
integration.requestWritebackfalsebooleanAllows requests:write. (Réduit la confidentialité)
integration.webhooks.enabledfalsebooleanOutbound webhook deliveries for this site. (Réduit la confidentialité)
integration.storeVisitNumberEncryptedfalsebooleanExposes externalRef on encounters and webhooks. (Réduit la confidentialité)
integration.rosterMaxClose51–50 countRoster circuit breaker: encounters one roster may close. (Réduit la confidentialité)
integration.rosterMaxClosePct205–50 percentRoster circuit breaker: share of the census. (Réduit la confidentialité)
ai.enabledfalsebooleanAI features at this site (F-35.3 layer 4). (Réduit la confidentialité)
ai.features.patientAssistantfalsebooleanAI feature: patientAssistant. (Réduit la confidentialité)
ai.features.familyHelperfalsebooleanAI feature: familyHelper. (Réduit la confidentialité)
ai.features.familyCatchUpfalsebooleanAI feature: familyCatchUp. (Réduit la confidentialité)
ai.features.testExplainersfalsebooleanAI feature: testExplainers. (Réduit la confidentialité)
ai.features.machineTranslationfalsebooleanAI feature: machineTranslation. (Réduit la confidentialité)
ai.features.voiceNativefalsebooleanAI feature: voiceNative. (Réduit la confidentialité)
ai.features.voiceWebfalsebooleanAI feature: voiceWeb. (Réduit la confidentialité)
ai.features.requestDigestfalsebooleanAI feature: requestDigest. (Réduit la confidentialité)
ai.features.quickRepliesfalsebooleanAI feature: quickReplies. (Réduit la confidentialité)
ai.features.handoverfalsebooleanAI feature: handover. (Réduit la confidentialité)
ai.features.patientMessageDraftsfalsebooleanAI feature: patientMessageDrafts. (Réduit la confidentialité)
ai.features.askDatafalsebooleanAI feature: askData. (Réduit la confidentialité)
ai.features.insightsfalsebooleanAI feature: insights. (Réduit la confidentialité)
ai.features.weeklyReportfalsebooleanAI feature: weeklyReport. (Réduit la confidentialité)
ai.features.anomaliesfalsebooleanAI feature: anomalies. (Réduit la confidentialité)
ai.features.mappingAssistantfalsebooleanAI feature: mappingAssistant. (Réduit la confidentialité)
ai.features.catalogChecksfalsebooleanAI feature: catalogChecks. (Réduit la confidentialité)
ai.features.contentAuthoringfalsebooleanAI feature: contentAuthoring. (Réduit la confidentialité)
ai.features.feedbackThemesfalsebooleanAI feature: feedbackThemes. (Réduit la confidentialité)
ai.features.commandAssistantfalsebooleanAI feature: commandAssistant. (Réduit la confidentialité)
ai.features.auditExplainerfalsebooleanAI feature: auditExplainer. (Réduit la confidentialité)
ai.patientLanguages[]arrayMachine-translated patient languages (each enabled in aiLanguages). (Réduit la confidentialité)
ai.monthlyBudgetUsd5000–100000 usdSite AI budget per month (AI_DEFAULT_SITE_BUDGET_USD).
ai.conversationRetentionDays70–30 daysDays AI conversations are kept after the session ends. (Réduit la confidentialité)
ai.safetyReviewSampleRate00–1 ratioRandom sampling of unflagged conversations; > 0 only with randomSampleApproval. (Réduit la confidentialité)
ai.selfHarmAutoAlerttruebooleanSelf-harm sends a structured urgent alert; off only with selfHarmAlertWaiver (D-AI-03). (Réduit la confidentialité)
ai.distressAutoAlertSeconds6030–120 secondsRed-flag distress alert delay (D-AI-03).
ai.showAssistantByDefaulttruebooleanShow the assistant entry point by default.
ai.crossSitePeerRangesfalsebooleanCross-site peer ranges (AI-15, Q-AI-06). (Réduit la confidentialité)
ai.governance.privacyApproval—objectGovernance gate record: privacyApproval. (Réduit la confidentialité)
ai.governance.regulatoryMemo—objectGovernance gate record: regulatoryMemo. (Réduit la confidentialité)
ai.governance.evalSignoff—objectGovernance gate record: evalSignoff. (Réduit la confidentialité)
ai.governance.piaTra—objectGovernance gate record: piaTra. (Réduit la confidentialité)
ai.governance.hazardLog—objectGovernance gate record: hazardLog. (Réduit la confidentialité)
ai.governance.staffBriefing—objectGovernance gate record: staffBriefing. (Réduit la confidentialité)
ai.governance.mappingAssistantPrivacyApproval—objectGovernance gate record: mappingAssistantPrivacyApproval. (Réduit la confidentialité)
ai.governance.randomSampleApproval—objectGovernance gate record: randomSampleApproval. (Réduit la confidentialité)
ai.governance.selfHarmAlertWaiver—objectGovernance gate record: selfHarmAlertWaiver. (Réduit la confidentialité)
ai.governance.safetyReviewers[]arrayThe designated AI safety review group (§2.4 footnote 8). (Réduit la confidentialité)
messaging.patientFacingLabelneutralneutral, brandedNeutral or branded SMS and push label; branded needs brandedLabelApproval (BR-13). (Réduit la confidentialité)
messaging.brandedLabelApproval—objectRecorded privacy approval for the branded label (audited). (Réduit la confidentialité)

Dernière mise à jour le

Cette page vous a-t-elle été utile?

Sur cette page