Create a monitor

POST /v1/monitors

Price: Free.

Rate limit: Counts as 1 request against your per-minute rate limit.

MCP tool: create_monitor, only on MCP connections granted monitor or webhook access.

Requires an API key, sent as Authorization: Bearer <key>.

Request

curl --request POST \
  --url https://api.weirapp.io/v1/monitors \
  --header "Authorization: Bearer $WEIR_API_KEY" \
  --header 'Content-Type: application/json' \
  --data '{"name":"…","target":"…"}'

Body

Field Type Required Notes
name string yes 1–120 chars
target object or object or object or object or object or object or object yes What the monitor watches. search runs a keyword search across sources; subreddit watches one community, with a keyword or without; x_user watches one account's posts; reddit_thread and x_thread watch one conversation for new replies. Identifiers are normalised, so a pasted URL, an r/ prefix, or an @ handle are all accepted.
schedule string no manual, hourly, daily, weekly, default "daily"
webhookId string or null no

Response

The created monitor.

201

Field Type Required Notes
data object yes
data.id string (uuid) yes
data.name string yes
data.target object or object or object or object or object or object or object yes What the monitor watches. search runs a keyword search across sources; subreddit watches one community, with a keyword or without; x_user watches one account's posts; reddit_thread and x_thread watch one conversation for new replies. Identifiers are normalised, so a pasted URL, an r/ prefix, or an @ handle are all accepted.
data.sources array of string yes
data.schedule string yes manual, hourly, daily, weekly
data.status string yes active, paused, archived
data.webhookId string or null yes
data.lastRunAt string or null yes
data.nextRunAt string or null yes
data.createdAt string (date-time) yes
data.updatedAt string (date-time) yes
meta object yes
meta.requestId string yes

Errors

Status Meaning What to do
400 The request failed validation. The request was malformed. The details object names the field.
401 The API key is missing, malformed, expired, or revoked. The key is missing, malformed, revoked, or expired.
402 The account is out of credit. Not retryable: this cannot clear until the billing period resets or the plan changes. Out of credits. Never retry. Only a person can clear it, by adding credits at https://weirapp.io/dashboard/billing. Retrying never will.
403 The API key does not carry the scope this route requires. The key is valid but lacks the scope this operation needs.
404 The webhook does not exist in this account. No such resource, or it is not public.
409 The tier's monitor limit was reached, or its schedules do not include hourly. details.limit says which ceiling. The request conflicts with the current state of the resource.
429 The per-minute rate limit is exhausted. Retryable: wait for Retry-After and try again. Rate limited. Retryable: wait for Retry-After, then try again.
500 An unexpected error occurred. Something failed on our side. Retryable with backoff.

View this page as Markdown