Warm Queries Guide

Goal: Understand warm queries—saved queries that automatically become API endpoints.


What is a Warm Query?

AspectDescription
Saved queryKQL query stored with your surface
Runs on demandEvery call executes the query against live data
API endpointAutomatically exposed via REST
GovernedCreation requires approval, access is logged

Warm queries are your building blocks. Each one answers a specific question about your data.


Warm Query Lifecycle

CREATE → BUILD → APPROVE → DEPLOY → CONSUME
   ↓        ↓        ↓         ↓        ↓
 Empty    Azi    Human     Goes      API
 shell   writes  reviews   live    endpoint
Warm query management interface

Creating a Warm Query

Option A: UI

  1. Enter your surface (click Surface node, then click Manage Surface icon in Inspector)
  2. Drag Warm Query from the Node Bank onto the surface canvas
  3. Name it (e.g., "temperature-hourly-avg")
  4. Query container is created, ready for KQL

Option B: Azi


Building the Query

This is where Azi shines:

  1. Open your warm query
  2. Describe what you want in plain English:
    • "Show average temperature by hour for the last 24 hours"
    • "Find all readings above 80 degrees"
    • "Count messages by device for today"
  3. Azi proposes KQL
  4. Review the query
  5. Approve, reject, or edit
Azi writing KQL for warm query

See Working with Azi → for detailed examples.


Query Results

Once approved and deployed:

Access MethodHow
UI previewClick query to see results
REST APIGET /api/workspaces/explorer/warm-queries/{name}
MCPQuery via Claude, Copilot

Warm Query vs Ad-Hoc Query

Warm QueryAd-Hoc Query
Saved, namedTemporary
API endpointNo endpoint
Governed creationDirect execution
Thinking Tip:

Use ad-hoc queries to explore. Promote to warm queries when you want to share or automate.


Next Steps

If you want to...Go to...
Build complex queries with AziWorking with Azi →
Learn KQL syntaxKQL Basics →
Call queries via APIAPIs Guide →
On this page