post · monitors:write

Create a monitor

Start watching a keyword set. Matching is literal, so include every spelling people use — the name, the domain and the @handle. The first scan runs on the next cron tick.

Write

REST

post/api/v1/monitors
curl "https://herculradar.com/api/v1/monitors" \
  --request POST \
  --header "Authorization: Bearer hr_live_…" \
  --header "Content-Type: application/json" \
  --header "Idempotency-Key: $(uuidgen)" \
  --data '{"name":"Acme","keywords":["Acme","acme.dev"]}'

MCP

Tool name create_monitor. It takes the same input and returns the same { data, meta } envelope as REST, because both call the same function.

Start watching a brand, product or competitor. Include every spelling people actually use — the domain and the @handle as well as the name — because matching is literal.

Request body

{
  "type": "object",
  "required": [
    "name",
    "keywords"
  ],
  "properties": {
    "name": {
      "type": "string",
      "maxLength": 80
    },
    "keywords": {
      "type": "array",
      "minItems": 1,
      "maxItems": 20,
      "items": {
        "type": "string"
      }
    },
    "exclude_keywords": {
      "type": "array",
      "maxItems": 20,
      "items": {
        "type": "string"
      }
    },
    "sources": {
      "type": "array",
      "items": {
        "type": "string",
        "enum": [
          "x",
          "reddit",
          "youtube",
          "linkedin",
          "threads"
        ]
      }
    },
    "group_name": {
      "type": "string",
      "enum": [
        "my_brand",
        "competitors",
        "custom"
      ]
    }
  }
}

Response

{
  "data": {
    "id": "2c1a9f77-1b31-4d6a-9d2e-0f6a2b3c4d5e",
    "name": "Acme",
    "keywords": [
      "Acme",
      "acme.dev",
      "@acmehq"
    ],
    "exclude_keywords": [
      "acme corp cartoon"
    ],
    "sources": [
      "x",
      "reddit",
      "youtube"
    ],
    "group_name": "my_brand",
    "active": true,
    "scan_interval_minutes": 15,
    "last_scanned_at": "2026-09-01T09:20:00.000Z"
  },
  "meta": {
    "capability": "create_monitor",
    "requestId": "req_9f2b4a8c1d0e",
    "idempotencyReplayed": false,
    "docs": "https://herculradar.com/docs/reference/create_monitor"
  }
}

Authorization

Requires the monitors:write scope. A credential without it gets 403 FORBIDDEN. Resources in projects the credential cannot reach answer 404 NOT_FOUND rather than 403, so ids cannot be probed across tenants.

Send an Idempotency-Key header. A completed response is replayed for 24 hours, so a retry after a timeout cannot create a duplicate.