Monitor a Company (webhooks)
POST/monitor5 credits

Monitor a Company (webhooks)

Create a watch on any company by URL. Detectors check each signal on its own schedule (news hourly, status every 30 minutes, jobs every two hours, pricing and customer logos every 12 hours, leadership daily, tech stack as the site is re-fingerprinted) and the watch gets one digest per cadence, by email on every plan and by Slack or Teams on Pro, only when something changed. Pass a webhook_url for per-event delivery: we POST each alert the moment it is detected. A domain outside the directory gets the site-level signals (agent_readiness, api_security) until it has a profile.

POSThttps://www.startuphub.ai/api/v1/monitor

Request

curl -X POST "https://www.startuphub.ai/api/v1/monitor" \
  -H "Authorization: Bearer sk_live_..." \
  -H "Content-Type: application/json" \
  -d '{"url":"cursor.com","signals":["funding","jobs","pricing"],"webhook_url":"https://yourapp.com/hooks/monitor"}'

Parameters

urlstringrequired

Company website or domain to watch (e.g. acme.com). Works on stealth startups not yet in the directory.

signalsstring[]optional

news, funding, jobs, tech_stack, pricing, status, product_launches, customers, leadership, agent_readiness, api_security. Defaults to everything your plan allows.

frequencystringoptional

Cadence: weekly | daily | 12h | 4h. Clamped to your plan max (faster = higher tier).

webhook_urlstringoptional

HTTPS endpoint. We POST {event, entity_id, title, body, metadata, delivered_at} the moment a change is detected.

delivery_channelsstring[]optional

email | slack | teams | discord | telegram. Defaults to email. The other four need Pro. Slack, Teams and Discord also need that channel's webhook URL on the watch, and Telegram needs the account connected to our bot; both are set in the account watchlist. webhook_url is independent and fires per event on any plan.

Response

json
{
  "data": {
    "id": "a1b2c3d4-...",
    "domain": "cursor.com",
    "entity_name": "Cursor",
    "frequency": "daily",
    "signals": ["funding", "jobs", "pricing"],
    "delivery_channels": ["email"],
    "webhook_url": "https://yourapp.com/hooks/monitor",
    "next_poll_at": "2026-05-25T20:30:00Z"
  },
  "credits": { "cost": 5, "remaining_period": 49995, "remaining_balance": 0 }
}

// Webhook payload - POSTed to webhook_url the moment a change is detected:
{
  "event": "funding",
  "entity_id": "...",
  "title": "Cursor raised a Series C",
  "body": "Led by ... · $...",
  "metadata": { "signal": "funding" },
  "delivered_at": "2026-05-25T21:14:00Z"
}

Errors

402Plan watch limit reached - upgrade to track more companies
409You are already watching this domain