---
id: SCR-PFM-QRY-016
title: Quick Search lookup
route: 'console header (every /console/{tenantId} page)'
surface: console
product_area: platform
module: queries
revision: 1
status: draft
design_intent: proposed
implementation_evidence: observed
inference: []
source_sha:
  react-console: baf6dae382d6f41dce976c7f848667ccc37e076f
  services-platform: ad3f6a6582843008ed0f5a17b131878d15829af1
purpose: Find permitted contacts and organizations from the console header and open the selected record.
supports:
  - JNY-PFM-QRY-005
  - CAP-PFM-QRY-016
permission: >-
  platform.quick-search.read and each record type’s read permission (crm.contacts.read for contacts
  and organizations); console alias console.quick-search
entry_from:
  - header trigger or keyboard shortcut
exits_to:
  - contact record page
  - organization record page
displays:
  - field: 'Type-grouped provider hits with ranked display values, image and inactive designation.'
    source: search provider via issueQuickSearchAccess credential
  - field: Population and access-availability feedback from the credential request.
    source: issueQuickSearchAccess
actions:
  - label: Search
    operation_id: issueQuickSearchAccess
    permission: platform.quick-search.read
    confirm: false
states:
  - dialog closed
  - typing delay
  - new lookup pending with earlier hits retained
  - provider hits
  - no matching hits
  - initial population
  - lookup unavailable
  - provider request failed
validation:
  - BR-CAP-PFM-QRY-016-01
  - BR-CAP-PFM-QRY-016-02
  - BR-CAP-PFM-QRY-016-09
  - BR-CAP-PFM-QRY-016-12
patterns:
  - command dialog in the console header
  - keyboard shortcut
  - grouped result list
  - status filter toggle
component: >-
  components/console/quick-search/quick-search.tsx, quick-search-dialog-view.tsx,
  quick-search-trigger.tsx; lib/quick-search/*.ts
evidence:
  - 'react-console at baf6dae: components/console/quick-search/*.tsx; lib/quick-search/*.ts'
controls: [TC-AVL-001, TC-AVL-005, TC-AZ-001, TC-AZ-002, TC-AZ-003, TC-AZ-004, TC-AZ-005, TC-CRY-001, TC-CRY-002, TC-CRY-003, TC-CRY-004, TC-DAT-001, TC-DAT-002, TC-DAT-003, TC-IAM-001, TC-IAM-002, TC-IAM-003, TC-IAM-004, TC-IAM-005, TC-LOG-001, TC-LOG-004, TC-LOG-005, TC-MON-001, TC-PI-001, TC-PI-003, TC-PI-005, TC-PRV-001, TC-PRV-002, TC-SEC-001, TC-SEC-002, TC-SEC-003, TC-SEC-004, TC-TEN-001, TC-TEN-002, TC-TEN-003, TC-VEN-001, TC-VEN-002, TC-VEN-003]
---

# Quick Search lookup

## What the Screen Is For

Find permitted contacts and organizations from the console header and open the selected record.

## What It Shows and Lets People Do

The command dialog obtains restricted access and searches the provider directly. It ignores stale responses and opens selected application records. Include inactive changes browser query filters; it does not call the credential operation as a separate server action.

## States and Errors

Access refusal and provider absence use unavailable feedback. Provider errors are distinct from no hits, and lookup results can be partial while initial population or rebuild work updates documents.

## Patterns It Must Respect

The existing header trigger, shortcut and command dialog use grouped result rows and local type and inactive toggles. Opening a hit still follows the application’s independent record access.
