---
title: "Update a monitor"
method: PATCH
path: "/api/v1/monitors/{monitor}"
tags: ["monitors"]
---

# Update a monitor

`PATCH /api/v1/monitors/{monitor}`

## Request

- Base URL: `https://pineprompt.com`
- URL: `https://pineprompt.com/api/v1/monitors/{monitor}`
- Auth: HTTP bearer

Updates a monitor. Every field is optional, so you may send only the fields you would like to change; a field that is omitted keeps its current value. Platforms sent without a country are validated against the monitor's stored country, and a country sent without platforms must be supported by every platform the monitor already runs on.

## Path parameters

- `monitor` integer, required

## Headers

- `Pineprompt-Project-Id` integer, required

## Request body

- UpdateMonitor
  - `name` string: A human-readable name for the monitor. May be up to <strong>120</strong> characters.
  - `platforms` string[]: The AI platforms you would like the monitor to run against. Each platform must support the chosen `country`.
  - `country` string: A two-letter <a href='https://en.wikipedia.org/wiki/ISO_3166-1_alpha-2' class='underline'>ISO 3166-1 alpha-2</a> country code. Pineprompt stores the value uppercased.
  - `language` string: A two-letter language code, such as `en` or `nl`. The field allows up to 10 characters so that regional variants may be expressed when needed.
  - `is_active` boolean: When set to `true`, the monitor will run on its next daily run. When set to `false`, the monitor is paused.

## Response `200`

OK

- Monitor: A monitor is a configured daily run: a set of prompts bound to one or more AI platforms in a chosen country and language. While a monitor is active, Pineprompt runs it once per day on your behalf.
  - `id` integer: The unique ID of the monitor.
  - `project_id` integer: The ID of the project this monitor runs under.
  - `name` string: The display name of the monitor.
  - `platforms` string[]: The AI platforms the monitor runs against.
  - `country` string: The ISO 3166-1 alpha-2 country code.
  - `language` string: The language the monitor runs in.
  - `is_active` boolean: Whether the monitor will run on its next daily run.
  - `project` Project: A project represents a single brand or site you monitor. Its `brand_id` names the own brand, the brand every core metric is computed for.
    - `id` integer: The unique ID of the project.
    - `organization_id` integer: The ID of the organization that owns the project.
    - `name` string: The display name of the project.
    - `brand_id` integer, nullable: The ID of the project's own brand, or null while none has been designated.
    - `organization` Organization: An organization is the top-level billing entity and tenant boundary in Pineprompt. Every project, member, and API key belongs to exactly one organization.
      - `id` integer: The unique ID of the organization.
      - `name` string: The display name of the organization.
      - `created_at` string, date-time: When the organization was created.
      - `updated_at` string, date-time: When the organization was last updated.
    - `created_at` string, date-time: When the project was created.
    - `updated_at` string, date-time: When the project was last updated.
  - `created_at` string, date-time: When the monitor was created.
  - `updated_at` string, date-time: When the monitor was last updated.

## Other responses

- `400`: Missing project header
- `401`: Unauthorized
- `403`: Missing ability
- `404`: Not found
- `422`: Validation failed

---

[API](https://skmtc.dev/pineprompt/apis/pineprompt-api.md) · [All operations](https://skmtc.dev/pineprompt/apis/pineprompt-api/llms.txt) · [OpenAPI document](https://skmtc.dev/pineprompt/apis/pineprompt-api/revisions/05dbb5241a27?raw)
