Introduction

WatchLLM exposes the Promptwatch-style product loop through a public REST v2 surface, an MCP endpoint, and an authenticated workspace.

The current local product documents the shipped WatchLLM handlers, not a separate mock API. REST handlers are composed by apps/nextjs/src/server/rest/v2.ts with product-domain route helpers, API-key auth lives in apps/nextjs/src/server/rest/auth.ts, and the MCP route lives in apps/nextjs/src/app/mcp/route.ts as an alias over apps/nextjs/src/app/api/mcp/route.ts.

Use these docs when integrating monitors, prompts, personas, projects, crawler analytics, visitor analytics, content gaps, citations, responses, visibility, and content generation into your own tools.

Base URLs

  • Local app: http://localhost:3003
  • REST v2: /api/v2
  • OpenAPI: /openapi-v2.json
  • Version metadata: /api/version
  • API metadata: /api/v2/meta
  • MCP: /mcp (/api/mcp remains available for existing clients)

Authentication

Pass either Authorization: Bearer <key> or X-API-Key: <key>.

Project-scoped keys are bound to one project and ignore X-Project-Id. Organization-wide keys can switch project context with X-Project-Id on project-scoped endpoints.