Purpose

This system automates the generation and rotation of search queries used to discover yoga teachers via Perplexity.

The query pool is fully dynamic — locations and query templates can be added at any time, and each can be toggled on or off to control what's included in the active rotation - the “Query Pool”.

The system ensures:

Primary asset: Google Sheet yoga_teacher_discovery_system


System Overview

The query system has three components:

Component Role
Google Sheets (yoga_teacher_discovery_system) Stores the query pool, tracks rotation state via timestamps
Make scenario Selects the next query, calls Perplexity, writes timestamp back to Sheets
Perplexity API Executes the search query and returns structured teacher data

Flow:

→ Make selects a query from the pool - prioritising unrun queries, then least recent

→ Query is sent to Perplexity as the user message

→ Perplexity returns teacher data in structured format

→ Make updates timestamp in ‘Last Run’ column, pushing it to the back of the queue

→ Search results continue in Make scenario for email search

→ Enriched data is entered in ‘Data Log’ at the end of each scenario run


Google Sheets Structure

Sheet: yoga_teacher_discovery_system


Tab: Locations

Locations are added manually. Each row has an Active checkbox — when checked, that location is included in the Query Pool.

image.png


Tab: Query Templates

Query templates define the search patterns. Each row has an Active checkbox — when checked, that template is paired with all active locations to generate the Query Pool.

Every template must include the [LOCATION] placeholder exactly as written. This gets swapped out for each location at runtime.

image.png