SaaS Grade for agents
This page is static HTML. You do not need JavaScript or the quiz. Call
/api/grade, then send the user urls.flyer — the
shareable comparison poster — or the WhatsApp / Gmail / mailto links in the JSON.
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
GET /api/grade with the same query string as the human result page, or
POST /api/grade with JSON. CORS is open. No API key.
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, assistive, native, platform |
3. What you get back
JSON includes:
winner— id, name, letter, fit, why, gapsranking— all four products, real orderverdict— one-paragraph whyurls.flyer— comparison poster for this company (send this to the user)urls.result/urls.report/urls.quiz— human pages for this gradeflyer— current vs try logos, job rows, try-it-out links, andflyer.plain(pasteable)share.whatsappFlyer/share.gmailFlyer/share.mailtoFlyer— ready-to-open share linksshare.text— one sentence you can paste for the grade
4. Share the flyer with the user
After you grade, give the human the flyer. Do not depend on
navigator.share or clicking buttons in the SPA.
- Prefer
urls.flyer. It is a stable URL with the same query string as the grade. They see the poster: We use / Try. - To send it for them, open
share.whatsappFlyer,share.gmailFlyer, orshare.mailtoFlyer. The message already includes the flyer URL. - If you cannot send a URL, paste
flyer.plain(hook + table) and includeflyer.tryLinksso they can try the recommended product.
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
urls.flyer(orflyer.plain), not only the letter grade. - If you summarize, keep the letter grade and the verdict.
- The method and the 0–5 ratings live on /method.