Give your product a scoring signal.
Put Helmslee’s 10-axis scorecard behind your own workflow. Authenticate once, send one strict JSON body, and receive a structured response your product can render, route, or cache.
Endpoint snapshot
POST /api/v1/scorex-api-key headerDesigned for partner surfaces that need the number and the underlying axes—not another dashboard to maintain.
The contract
Small surface area. Useful signal.
The partner endpoint keeps the integration deliberately narrow. The request is easy to form, the response is typed for a scorecard UI, and authentication never travels in the body.
See request, response, and error detailsPOST /api/v1/scorex-api-key header.{ "input": "…" }. The schema is strict and rejects unknown keys.Try /v1/score
Make the first call in under a minute.
The label is the product surface; the live handler is /api/v1/score. Here is the smallest useful request and a representative 200 response. Values are illustrative; field names and ranges are the contract.
Request
One strict body, one auth header.
curl --request POST \
--url https://helmslee.polsia.app/api/v1/score \
--header "content-type: application/json" \
--header "x-api-key: hlms_<your-key>" \
--data '{"input":"A vertical SaaS for independent venue owners."}'Replace hlms_<your-key> with the plaintext key from the key-management surface. It is shown once.
Response
Representative 200 JSON.
{
"score": 72,
"breakdown": {
"axes": [
{
"key": "demand",
"label": "Demand",
"score": 8,
"verdict": "pass",
"rationale": "A clearly named buyer and durable search intent are present.",
"sourceUrl": "https://trends.google.com/"
},
{
"key": "competition",
"label": "Competition",
"score": 6,
"verdict": "neutral",
"rationale": "Existing tools leave room for a narrower wedge.",
"sourceUrl": "https://www.g2.com/"
},
{
"key": "profitability",
"label": "Profitability",
"score": 7,
"verdict": "pass",
"rationale": "The buyer has a clear economic reason to pay.",
"sourceUrl": "https://www.bls.gov/oes/"
},
{
"key": "scalability",
"label": "Scalability",
"score": 6,
"verdict": "neutral",
"rationale": "A repeatable workflow supports a focused product.",
"sourceUrl": "https://developer.mozilla.org/"
},
{
"key": "automation",
"label": "Automation",
"score": 8,
"verdict": "pass",
"rationale": "The core work is structured enough to automate.",
"sourceUrl": "https://developers.google.com/"
},
{
"key": "retention",
"label": "Retention",
"score": 7,
"verdict": "pass",
"rationale": "The recurring workflow gives the buyer a reason to return.",
"sourceUrl": "https://www.g2.com/"
},
{
"key": "seo",
"label": "SEO surface",
"score": 6,
"verdict": "neutral",
"rationale": "The niche has useful language to build around.",
"sourceUrl": "https://search.google.com/search-console/about"
},
{
"key": "virality",
"label": "Virality",
"score": 4,
"verdict": "fail",
"rationale": "The first distribution loop needs a deliberate design.",
"sourceUrl": "https://www.reddit.com/"
},
{
"key": "startupCost",
"label": "Startup cost",
"score": 8,
"verdict": "pass",
"rationale": "A narrow first release can launch with modest spend.",
"sourceUrl": "https://www.shopify.com/"
},
{
"key": "technicalDifficulty",
"label": "Technical difficulty",
"score": 6,
"verdict": "neutral",
"rationale": "The first version is achievable with a focused surface.",
"sourceUrl": "https://developer.mozilla.org/"
}
],
"winnabilityScore": 68,
"winnabilityBreakdown": {
"signals": [
{ "key": "incumbentStrength", "label": "Incumbent strength", "score": 7, "verdict": "pass" },
{ "key": "switchingCost", "label": "Switching cost", "score": 6, "verdict": "neutral" },
{ "key": "asymmetricAdvantage", "label": "Asymmetric advantage", "score": 7, "verdict": "pass" },
{ "key": "structuralLiability", "label": "Structural liability", "score": 6, "verdict": "neutral" }
],
"score": 68,
"verdict": "pass"
}
},
"recommendations": [
{
"axis": "virality",
"verdict": "fail",
"message": "Improve Virality — this axis is below the pass bar."
}
]
}Browser checkpoint
Want to feel the scorecard before wiring it into your product?
Try the same engine in-browser, then bring the result shape back to your own surface.
Ready for the handoff?
Put the score where your users already work.
Start with a key, skim the complete contract, and ship the first request into your own workflow.