• Blog
  • Docs
  • Pricing
  • We’re hiring!
Log inSign up
project logo

templates

leads

Lead qualifying from any data source
Public
Like
leads
Home
Code
6
PROMPT.txt
README.md
agent.ts
dashboard.tsx
db.ts
H
main.ts
Branches
1
Pull requests
Remixes
1
History
Environment variables
1
Val Town is a collaborative website to build and scale JavaScript apps.
Deploy APIs, crons, & store data – all from the browser, and deployed in milliseconds.
Sign up now
Code
/
README.md
Code
/
README.md
Search
…
Viewing readonly version of main branch: v55
View latest version
README.md

Leads

Lead qualifying from any data source.

What this does

  1. This val is a webhook
  2. You can POST arbitrary lead data to it from anywhere
  3. An AI agent sorts the good leads from the bad leads
  4. Leads are stored and arranged in a dashboard

Getting started

  1. Click Remix
  2. Store your OPENAI_API_KEY as an environment variable here
  3. Customize PROMPT.txt (Don't remove any fields from the structured response)
  4. Get the val's HTTP endpoint from main.ts:
  5. Forward leads to this webhook as a POST request.
  6. That's it! Watch them drop into your dashboard at main.ts

How it works

Webhook

  • Data from incoming POST requests are passed to the OpenAI agent in agent.ts.

AI Agent

  • The agent uses web research check if the lead is a match for the criteria in PROMPT.txt.
  • By default, the AI returns {name, match, reasoning}. This is the output_data.

Storage

  • Every lead is added to the leads SQLite table: id, timestamp, input_data, output_data.

Dashboard

  • Leads that are a match are at the top of the dashboard.
  • Non-matches are hidden by default
  • Click a lead to view all input and output data

Options

  • Add fields to the AI's output instructions in PROMPT.txt to:
    • enhance the AI's assessment
    • enrich your leads
    • normalize lead data from different sources
  • add query parameters to your POST to flag sources
    • ex: your-val-endpoint.val.run?source=signup-page
FeaturesVersion controlCode intelligenceCLIMCP
Use cases
TeamsAI agentsSlackGTM
DocsShowcaseTemplatesNewestTrendingAPI examplesNPM packages
PricingNewsletterBlogAboutCareers
We’re hiring!
Brandhi@val.townStatus
X (Twitter)
Discord community
GitHub discussions
YouTube channel
Bluesky
Open Source Pledge
Terms of usePrivacy policyAbuse contact
© 2025 Val Town, Inc.