API v2

Full programmatic access to research, extraction, publications, and workspace management

https://api.webhound.ai/api/v2·57 endpoints·Bearer auth·JSON responses

Calling Webhound from an LLM agent? Install the skill.

recommended

The endpoint reference below tells your agent the shape of every call. The skill teaches it the judgment the reference can’t — when to pick flash vs pro, budget floors that won’t be rejected, the context_session_ids attach pattern, and the credit_exhaustion marker that tells you a “completed” run actually halted under budget.

Drop SKILL.md into .cursor/skills/webhound/ for a Cursor agent, or the equivalent skills directory for Claude Code.

Authentication

All requests require an API key in the Authorization header:

Authorization: Bearer wh_your_api_key_here

Get your API key from the Account page. Keys start with wh_

Response format

All endpoints return structured JSON. Every response follows this envelope:

Success
{ "success": true, "data": { ... } }
Error
{ "success": false, "error": "message" }

The data field contains the endpoint-specific payload — an object, array, or nested structure depending on the endpoint.

HTTP status codes

200 Success400 Bad request401 Invalid/missing key402 Insufficient credits403 Access denied404 Not found409 Conflict (wrong state)500 Server error

Workspace

Session Discovery

Session Reading

Session Management

Research

Extraction

Pipelines

Files

Publications

Authors

Account

Workflows

Common multi-step patterns using the API.

Research, Read, Publish

1Start research
curl -X POST https://api.webhound.ai/api/v2/research \
  -H "Authorization: Bearer wh_YOUR_KEY" \
  -H "Content-Type: application/json" \
  -d '{ "title": "AI Governance", "query": "Research AI governance frameworks in 2026", "budget": 15 }'
2Poll status until completed
curl https://api.webhound.ai/api/v2/sessions/{session_id}/status \
  -H "Authorization: Bearer wh_YOUR_KEY"
# Repeat every 10s until status = "completed"
3Read the output document
curl https://api.webhound.ai/api/v2/sessions/{session_id}/document \
  -H "Authorization: Bearer wh_YOUR_KEY"
4Read verified claims
curl https://api.webhound.ai/api/v2/sessions/{session_id}/claims \
  -H "Authorization: Bearer wh_YOUR_KEY"
5Publish to community
curl -X POST https://api.webhound.ai/api/v2/publications \
  -H "Authorization: Bearer wh_YOUR_KEY" \
  -H "Content-Type: application/json" \
  -d '{ "folder_id": "...", "title": "AI Governance Report", "license": "open" }'

Extraction Pipeline

1Start a multi-step pipeline
curl -X POST https://api.webhound.ai/api/v2/chains \
  -H "Authorization: Bearer wh_YOUR_KEY" \
  -H "Content-Type: application/json" \
  -d '{ "title": "Competitor Intel", "steps": [{ "type": "research", "query": "Map competitor landscape", "budget": 10 }, { "type": "extraction", "query": "Extract company data", "budget": 5 }] }'
2Poll status of each step
curl https://api.webhound.ai/api/v2/sessions/{session_id}/status \
  -H "Authorization: Bearer wh_YOUR_KEY"
3Get the extracted dataset
curl https://api.webhound.ai/api/v2/extractions/{session_id}/items \
  -H "Authorization: Bearer wh_YOUR_KEY"

Research with Audit

1Start research
curl -X POST https://api.webhound.ai/api/v2/research \
  -H "Authorization: Bearer wh_YOUR_KEY" \
  -H "Content-Type: application/json" \
  -d '{ "title": "Drug Policy Analysis", "query": "Analyze drug decriminalization outcomes", "budget": 20 }'
2Wait for completion
# Poll /sessions/{session_id}/status until status = "completed"
3Add audit to verify claims
curl -X POST https://api.webhound.ai/api/v2/research/{session_id}/audit \
  -H "Authorization: Bearer wh_YOUR_KEY" \
  -H "Content-Type: application/json" \
  -d '{ "amount": 10, "focus": "Fact-check all statistics and check source reliability" }'
4Read audited claims with confidence scores
curl https://api.webhound.ai/api/v2/sessions/{session_id}/claims \
  -H "Authorization: Bearer wh_YOUR_KEY"

Webhound API v2.0.0 · 57 endpoints · All JSON responses

v1 endpoints remain available at /api/v1

Last updated: 5/13/2026