API Reference

ICPs

Ideal Customer Profiles used for discovery and account scoring. Create them from plain English, set the active one, and delete them.

List ICPs

GET/icps
Response
{
  "data": [
    {
      "id": "...",
      "name": "Primary ICP",
      "raw_text": "B2B SaaS companies, 200-2000 employees, in North America...",
      "compiled": { "...": "compiled profile" },
      "is_active": true,
      "created_at": "2026-06-01T..."
    }
  ]
}

Create an ICP

POST/icps

Provide a plain-English description, Hunch compiles it into a structured profile. Compilation is best-effort, the ICP is still created (uncompiled) if the AI engine is unavailable.

Body fields
namestringrequired

A label for the ICP.

raw_textstringrequired

Plain-English description of your ideal customer.

activatebooleanoptional

Make this the active ICP on creation.

Request
curl -X POST https://usehunch.co/api/v1/icps \
  -H "Authorization: Bearer hunch_YOUR_KEY" \
  -H "Content-Type: application/json" \
  -d '{ "name": "Enterprise", "raw_text": "Fortune 1000 fintechs with 1000+ employees", "activate": true }'

Get an ICP

GET/icps/:id

Returns the ICP including its compiled profile.

Set the active ICP

PATCH/icps/:id

Send { "active": true } to make this the active ICP used for discovery. Any other ICP is deactivated.

Body fields
activebooleanrequired

Must be true. Makes this the active ICP.

Exactly one ICP is active at a time. Activating an ICP clears the flag on all others.

Delete an ICP

DELETE/icps/:id
Response
{ "data": { "id": "...", "deleted": true } }