Free forever. No auth. No usage limits worth worrying about.

Build on 23,371 real problems

PainSignal listens to how people across every industry describe what is broken about their work — the plumber fighting a scheduling tool, the office manager chasing patient reminders — and turns it into a structured, queryable corpus. This page is everything you need to consume it programmatically.

Problems
23,371
Opportunities
11,033
Industries
87
Categories
415

Try it right now

No signup, no key, no preamble. Paste this into a terminal.

curl -s 'https://painsignal.net/api/v1/signals?industry=Plumbing&min_severity=4&limit=3' \
  | jq '.data[] | {problem: .painStatement, idea: .solutionTitle}'

Every response is { data, meta, error }. On success error is null; on failure data is null.

Six ways in

Tools built on top

Rate limits and optional keys

Everything works with no key at all. A free API key exists only to raise your limits and lift the row cap on bulk export — it does not unlock any data. If you ever find something reachable only with a key, that is a bug.

Endpoint classAnonymousWith a key
Reads and analytics60 / min600 / min
Semantic search10 / min60 / min
Bulk export5 / hour, 1,000 rows60 / hour, 50,000 rows
curl -s 'https://painsignal.net/api/v1/export?type=problems&format=jsonl' \
  -H 'X-API-Key: ps_live_…'
Get a free key

If you are an agent

Every page on this site has a markdown twin: append .md to any path, or send Accept: text/markdown. Token count is advertised in the X-Markdown-Tokens response header.

Using the data

Free to use, including commercially. Attribution is appreciated but not demanded — a link back to painsignal.net is enough. Please do not re-publish the corpus wholesale as a competing index. See the terms, and get in touch if you are building something big on this — higher limits are available for the asking.

Join the beta — full access for the first 1,000 builders

Join Beta