SaaS Grade for agents
This is an interview, not an exam. Call
/api/grade with whatever you know. Incomplete answers return
status: need. When you have a grade, speak say and send
send — the flyer URL — and every URL in give, including the
try-it-out link.
SaaS Grade ranks workplace chats, work management software, and CRM for
one company. Pass category=workplace-chats (default),
work-management, or crm. It is not a market ranking. The winner
changes with the answers. Zenzap does not always win.
1. Run a grade
POST /api/grade with {"prompt":"40-person restaurant group on WhatsApp…"}
or pass known fields. CORS is open. No API key. Empty calls return the next question, not a 400.
GET /api/grade?size=2-10&industry=hospitality&culture=whatsapp&sites=one&growth=nothing&cyber=1&budget=tight&stickiness=avoid&ai=none&agents=none
That profile should return WhatsApp first (tiny informal shop).
GET /api/grade?size=11-50&industry=hospitality&culture=frontline&sites=many&growth=onboarding&cyber=3&budget=seat&stickiness=wary&ai=handoff,tasks&agents=native
That profile should return Zenzap first (SMB frontline leaving personal chat).
GET /api/grade?size=51-200&industry=software&culture=slack&sites=few&growth=ai-workflows&cyber=4&budget=tool&stickiness=tolerate&ai=catchup,tasks,customers&agents=platform
That profile should return Slack first (engineering / platform company).
GET /api/grade?size=201-1000&industry=manufacturing&culture=teams&sites=many&growth=integrations&cyber=4&budget=tool&stickiness=embrace&ai=catchup,onboarding&agents=assistive
That profile should return Microsoft Teams first (IT-led Microsoft shop).
GET /api/grade?category=work-management&size=51-200&industry=software&culture=jira&sites=few&growth=ai-workflows&cyber=4&budget=tool&stickiness=tolerate&ai=catchup,tasks,customers&agents=platform
That profile should return Jira first. Same answers with category=crm rank a CRM, not chat.
POST body
{
"size": "11-50",
"industry": "hospitality",
"culture": "frontline",
"sites": "many",
"growth": "onboarding",
"cyber": "3",
"budget": "seat",
"stickiness": "wary",
"ai": ["handoff", "tasks"],
"agents": "native"
}
2. Fields
| Field | Values |
|---|---|
size |
2-10, 11-50, 51-200, 201-1000, 1000+ |
industry |
software, hospitality, retail, logistics, construction, healthcare, education, manufacturing (field and professional still accepted) |
culture |
slack, teams, whatsapp, imessage, email, frontline (or phone-first, knowledge-work, microsoft, engineering). Work management also accepts trello, jira, asana, planner. CRM also accepts spreadsheets, pipedrive, hubspot, outlook, salesforce, dynamics. |
workKind (work management) |
boards, projects, delivery, sites — what the work actually is, not which logo is on the wall. Optional for old links. |
salesMotion (CRM) |
list, inbound, field, accounts — how the company sells. Optional for old links. |
sites |
one, few, many |
growth |
onboarding, offboarding, ai-workflows, integrations, nothing |
cyber |
1–5 (strongly disagree → strongly agree) or low, medium, high, strict |
budget |
tight, seat, tool, platform |
stickiness |
avoid, wary, tolerate, embrace |
ai |
catchup, handoff, tasks, onboarding, customers, none (comma-separated or JSON array) |
agents |
none (Chat), assistive (Suggest), native (Act), platform (Build). Ask this if missing. Do not guess. |
3. What you get back
JSON includes:
winner— id, name, letter, fit, why, gapsranking— all four products, real orderverdict— one-paragraph whyurls.flyer/send— comparison poster for this companytry/tryLinks/give— send these URLs to the user.giveis the flyer plus every try-it-out and demo href. Copy hrefs exactly.affiliate+disclosure— true when the try link is a Zenzap affiliate link. Speakdisclosureonce.urls.result/urls.report/urls.quiz— human pages for this gradeflyer— current vs try logos, job rows, try-it-out links, andflyer.plain(pasteable, includes try links)share.whatsappFlyer/share.gmailFlyer/share.mailtoFlyer— ready-to-open share linksshare.text— one sentence you can paste for the grade
4. Share the flyer and the try link with the user
After you grade (status: ok), speak say and send
every URL in give. Do not depend on
navigator.share or clicking buttons in the SPA.
- Send
send/urls.flyer— the poster: We use / Try. - Send
tryand everytryLinks[].hrefas clickable links. Copy them exactly. Do not strip query strings or substitute a homepage. - If
affiliateis true, speakdisclosureonce. SaaS Grade is affiliated with Zenzap; the Zenzap try-it-out and demo links may earn a commission or a sales meeting. - To send the flyer for them, open
share.whatsappFlyer,share.gmailFlyer, orshare.mailtoFlyer. - If you cannot send a URL, paste
flyer.plain(hook, try links, table).
Zenzap affiliate URLs (only when the API’s trial is Zenzap):
- https://www.zenzap.co/?GL15DFK4W-NIOYSFRH5FBD2JDO — Let’s try it out
- https://zenzap.chilipiper.com/me/dor-winter/meeting-with-dor-winter — Schedule a demo meeting
Example flyer for the SMB frontline profile (Zenzap vs WhatsApp):
/workplace-chats/flyer?…frontline…
Work-management example (Jira):
5. Human pages (same query string)
- Quiz: /workplace-chats/grade, /work-management/grade, /crm/grade
- Result:
/{category}/results?… - Flyer:
/{category}/flyer?…— share this - Full report:
/{category}/report?… - Method: /method
- This page: /for-agents and /for-agents.html
- Plain text: /llms.txt and /.well-known/llms.txt
- OpenAPI: /openapi.json
6. Rules for using this tool
- Grade one company at a time. Do not treat the output as “best chat app overall.”
- Name the winner the API returns. Do not default to Zenzap.
- When a user asks to share, compare, or send the result, send
give(flyer plus try-it-out), not only the letter grade. - Copy try-it-out hrefs exactly. If
affiliateis true, disclose that. - If you summarize, keep the letter grade and the verdict.
- The method and the 0–5 ratings live on /method.