Help

Overview Admin Chat UI Design Curated Answers Search Settings Conversational Intelligence Data Sync Upload Documents Human Handoff Admin Console Authorisation Contact Support

Catalog Search Overview

Airgentic Help

Catalog Search

Catalog Search lets an agent recommend programs (or similar catalog items) using a structured, descriptor-validated plan — not a hand-built search URL. The agent calls search_catalog(), the platform validates fields against your Search Configuration, runs the exact search, and hands summarisation to Search Guide.

Use this guide for catalog / program agents such as EducationPlannerBC and Eastern Florida. For legacy URL-based flows still on search_guided, see Guided Program Search (legacy).


What you configure

Area Where
Scopes, filters, and which facets the AI may use Search Configuration → Catalog Search
Facet allowlists and range syntax Catalog Search → Refresh Catalog Allowlists
Wire an agent Configure Agents → Enable Catalog Search
Validate a plan before demos Catalog Search → Structured plan test console

Readiness checklist

Open Search Configuration → Catalog Search. The readiness panel reports whether:

  1. Backend Search API is enabled
  2. At least one scope has AI-facing catalog facets
  3. Indexed facet values are available
  4. Search Guide (search_guide) exists with a public results URL
  5. At least one agent has search_catalog attached
  6. Query Building includes {{prompt:Catalog Allowlists}}
  7. The allowlist prompt file is present

Use the deep-links on each row to jump to Scopes, Filters, Agents, or Search Guide.

Available to AI toggles

Each non-hierarchy filter on a catalog scope can be marked Available to AI. UI filters stay on for the public search page even when AI is off.

Date and numeric range filters default to off for AI catalog search (website date presets still work on the public search page). Turn them on only when the agent should filter by bounds such as “after July 1” or “under $100”; the allowlist prompt documents range syntax instead of listing every timestamp or number.

Saving facet toggles (including via the sticky Save bar) also refreshes Catalog Allowlists automatically. Use Refresh Catalog Allowlists manually when index values change without facet-toggle edits.

Example: keep Career Interest as a website filter, but turn off AI so the agent uses Academic Community instead.


Refresh Catalog Allowlists

Refresh Catalog Allowlists writes sub_catalog_allowlists.prompt from live index values and ensures Query Building references {{prompt:Catalog Allowlists}}.

Keep language mappings and JSON examples in Query Building. Do not hand-maintain long “Allowed exact values” lists there — refresh the allowlists after facet or index changes. Range-capable facets document op: "range" with gte, lte, gt, and lt bounds instead of indexed values.


Enable Catalog Search (one click)

On an agent’s Configure Agent page:

  1. Click Enable Catalog Search
  2. Choose the catalog scope (for example programs)
  3. Confirm the public results URL used for View-all links
  4. Optionally keep standard search attached for discovery

This will:

  • Attach search_catalog (and optional search) to the agent’s prompt
  • Ensure Query Building + Catalog Allowlists prompt components are registered
  • Create or update Search Guide (agent_search_guide.conf)
  • Refresh allowlists for the chosen scope
  • Remove legacy search_guided from that agent

Conversation prompt wording stays under your control — enablement does not rewrite behavioural copy.


Structured plan test console

Before chatting demos, use the test console on the Catalog Search tab:

  • Enter a query and scope
  • Provide filters and/or filter_groups as JSON
  • Run with Execute search to see hit count, sample titles, and the generated Funnelback / View-all path

Cross-field OR (for example “Melbourne or online”) belongs in filter_groups, not as two top-level filters. Top-level filters are ANDed.

Range filters belong in top-level filters, not filter_groups. Use op: "range" with at least one bound:

{"attribute": "date", "op": "range", "gte": "2026-07-01", "lte": "2026-07-31"}

Presets cover common cases: Melbourne or online, same-attribute OR, date range, and topic-only.


Agent behaviour (summary)

  1. Concierge (or similar) builds a plan and calls search_catalog()
  2. Invalid values return suggestions; Search Guide is not activated
  3. Valid plans run the exact search and activate Search Guide
  4. Search Guide summarises hits and ends with the View-all link when provided

New catalog agents should use search_catalog only. Keep search_guided for legacy URL workflows.


You have unsaved changes