Skip to main content
PUT
Update Monitor

Authorizations

X-API-Key
string
header
required

API key for authentication. Get yours from the Promptwatch dashboard under Settings > API Keys.

Path Parameters

id
string<uuid>
required

Monitor ID

Body

application/json
name
string

Monitor name

Minimum string length: 1
description
string | null

Monitor description

models
string[]

List of LLM models to monitor

Minimum array length: 1
active
boolean

Whether the monitor is active

languageCode
string

Language code. Fixed after creation. A different value is rejected.

countryCode
string

Country code. Fixed after creation. A different value is rejected.

stateCode
string | null

State code. Fixed after creation. A different value is rejected.

cityCode
string | null

City code. Fixed after creation. A different value is rejected.

latitude
number | null

Latitude of the pinned point. Fixed after creation. A different value is rejected.

Required range: -90 <= x <= 90
longitude
number | null

Longitude of the pinned point. Fixed after creation. A different value is rejected.

Required range: -180 <= x <= 180
locationAccuracy
enum<integer> | null

Accuracy radius of the pinned point in meters. Fixed after creation. A different value is rejected.

Available options:
20,
50,
100,
500,
1000,
5000,
null
locationName
string | null

Name of the pinned point. Fixed after creation. A different value is rejected.

Maximum string length: 120
personaId
string<uuid> | null

Persona ID

personaStackingEnabled
boolean

Inject the persona's stackable prompt around each tracked prompt at run time

promptFrequency
enum<string> | null

Monitor-level tracking frequency. EVERY_12_HOURS, EVERY_6_HOURS and HOURLY require the Hourly Tracking feature (Business and Agency Scale, or enabled per organization); DAILY requires either Hourly Tracking or Custom Prompt Frequency; EVERY_OTHER_DAY, WEEKLY and MONTHLY require the Custom Prompt Frequency feature. Null clears it so the monitor inherits the organization's default frequency.

Available options:
DAILY,
EVERY_OTHER_DAY,
WEEKLY,
MONTHLY,
EVERY_12_HOURS,
EVERY_6_HOURS,
HOURLY,
null

Response

Default Response

id
string<uuid>
required

Monitor unique identifier

name
string
required

Monitor name

active
boolean
required

Whether the monitor is active

models
string[]
required

List of LLM models being monitored

languageCode
string
required

Language code for the monitor

countryCode
string
required

Country code for the monitor

latitude
number | null
required

Latitude of the monitor's pinned point. Null when no point is pinned.

longitude
number | null
required

Longitude of the monitor's pinned point. Null when no point is pinned.

locationAccuracy
integer | null
required

Accuracy radius of the pinned point in meters. Null when no point is pinned.

locationName
string | null
required

Name of the pinned point. Null when none was given.

promptCount
number
required

Number of prompts in this monitor

responseCount
number
required

Total number of responses across all prompts

averageVisibility
number
required

Average visibility score for the monitor within the selected date range

createdAt
string<date-time>
required

Monitor creation timestamp

updatedAt
string<date-time>
required

Monitor last update timestamp

description
string | null

Monitor description

promptFrequency
enum<string> | null

Monitor-level tracking frequency. EVERY_12_HOURS, EVERY_6_HOURS and HOURLY run several times a day on fixed UTC hours. Null inherits the organization's default frequency.

Available options:
DAILY,
EVERY_OTHER_DAY,
WEEKLY,
MONTHLY,
EVERY_12_HOURS,
EVERY_6_HOURS,
HOURLY
responseCountInRange
number

Number of responses created within the selected date range

personaName
string | null

Persona name used for the monitor

personaDescription
string | null

Persona description

personaAgeRange
string | null

Persona age range

personaEducationLevel
string | null

Persona education level