---
title: "Get one monitor"
method: GET
path: "/v1/monitors/{id}"
tags: ["Monitors"]
---

# Get one monitor

`GET /v1/monitors/{id}`

## Request

- Base URL: `https://api.weirapp.io`
- URL: `https://api.weirapp.io/v1/monitors/{id}`
- Auth: HTTP bearer

## Path parameters

- `id` string, uuid, required

## Response `200`

The monitor.

- object
  - `data` object, required
    - `id` string, uuid, required
    - `name` string, required
    - `target` union, required: 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.
      - object
        - `kind` 'search', required
        - `query` string, required
        - `sources` string[], required
      - object
        - `kind` 'subreddit', required
        - `subreddit` string, required
        - `query` string, nullable
        - `includeNsfw` boolean
      - object
        - `kind` 'subreddit_comments', required
        - `subreddit` string, required
        - `query` string, nullable
        - `includeNsfw` boolean
      - object
        - `kind` 'reddit_user', required
        - `username` string, required
        - `include` 'posts' | 'comments' | 'both'
        - `includeNsfw` boolean
      - object
        - `kind` 'x_user', required
        - `handle` string, required
        - `userId` string, nullable
      - object
        - `kind` 'reddit_thread', required
        - `postId` string, required
      - object
        - `kind` 'x_thread', required
        - `postId` string, required
    - `sources` string[], required
    - `schedule` 'manual' | 'hourly' | 'daily' | 'weekly', required
    - `status` 'active' | 'paused' | 'archived', required
    - `webhookId` string, uuid, nullable, required
    - `lastRunAt` string, date-time, nullable, required
    - `nextRunAt` string, date-time, nullable, required
    - `createdAt` string, date-time, required
    - `updatedAt` string, date-time, required
  - `meta` object, required
    - `requestId` string, required

## Other responses

- `400`: The request failed validation.
- `401`: The API key is missing, malformed, expired, or revoked.
- `402`: The account is out of credit. Not retryable: this cannot clear until the billing period resets or the plan changes.
- `403`: The API key does not carry the scope this route requires.
- `404`: No such monitor in this account.
- `429`: The per-minute rate limit is exhausted. Retryable: wait for Retry-After and try again.
- `500`: An unexpected error occurred.

---

[API](https://skmtc.dev/weirapp/apis/weir-api.md) · [All operations](https://skmtc.dev/weirapp/apis/weir-api/llms.txt) · [OpenAPI document](https://skmtc.dev/weirapp/apis/weir-api/revisions/4c6a9ae0bfca?raw)
