모니터 수정
모니터 정의의 어느 부분이든 바꾸거나, 모니터를 일시 중지·재개합니다.
curl --request PATCH \
--url https://api.querying.ai/v1/monitors/{id} \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '
{
"name": "<string>",
"category": "<string>",
"promptTopics": {},
"engines": [],
"prompts": [
"<string>"
],
"aliases": [
"<string>"
],
"domains": [
"<string>"
],
"country": "<string>",
"competitors": [
{
"name": "<string>",
"aliases": [
"<string>"
]
}
],
"alertBelowPct": 50,
"intervalHours": 84,
"enabled": true,
"location": {
"latitude": 37.4979,
"longitude": 127.0276
},
"grid": {
"center": {
"latitude": 37.4979,
"longitude": 127.0276
},
"radiusMeters": 25050
},
"engineSettings": {
"CHATGPT": {
"samples": 5
},
"GOOGLE": {
"intervalHours": 168
}
},
"webhookUrl": "<string>",
"analysis": false
}
'import requests
url = "https://api.querying.ai/v1/monitors/{id}"
payload = {
"name": "<string>",
"category": "<string>",
"promptTopics": {},
"engines": [],
"prompts": ["<string>"],
"aliases": ["<string>"],
"domains": ["<string>"],
"country": "<string>",
"competitors": [
{
"name": "<string>",
"aliases": ["<string>"]
}
],
"alertBelowPct": 50,
"intervalHours": 84,
"enabled": True,
"location": {
"latitude": 37.4979,
"longitude": 127.0276
},
"grid": {
"center": {
"latitude": 37.4979,
"longitude": 127.0276
},
"radiusMeters": 25050
},
"engineSettings": {
"CHATGPT": { "samples": 5 },
"GOOGLE": { "intervalHours": 168 }
},
"webhookUrl": "<string>",
"analysis": False
}
headers = {
"Authorization": "Bearer <token>",
"Content-Type": "application/json"
}
response = requests.patch(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'PATCH',
headers: {Authorization: 'Bearer <token>', 'Content-Type': 'application/json'},
body: JSON.stringify({
name: '<string>',
category: '<string>',
promptTopics: {},
engines: [],
prompts: ['<string>'],
aliases: ['<string>'],
domains: ['<string>'],
country: '<string>',
competitors: [{name: '<string>', aliases: ['<string>']}],
alertBelowPct: 50,
intervalHours: 84,
enabled: true,
location: {latitude: 37.4979, longitude: 127.0276},
grid: {center: {latitude: 37.4979, longitude: 127.0276}, radiusMeters: 25050},
engineSettings: {CHATGPT: {samples: 5}, GOOGLE: {intervalHours: 168}},
webhookUrl: '<string>',
analysis: false
})
};
fetch('https://api.querying.ai/v1/monitors/{id}', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://api.querying.ai/v1/monitors/{id}",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "PATCH",
CURLOPT_POSTFIELDS => json_encode([
'name' => '<string>',
'category' => '<string>',
'promptTopics' => [
],
'engines' => [
],
'prompts' => [
'<string>'
],
'aliases' => [
'<string>'
],
'domains' => [
'<string>'
],
'country' => '<string>',
'competitors' => [
[
'name' => '<string>',
'aliases' => [
'<string>'
]
]
],
'alertBelowPct' => 50,
'intervalHours' => 84,
'enabled' => true,
'location' => [
'latitude' => 37.4979,
'longitude' => 127.0276
],
'grid' => [
'center' => [
'latitude' => 37.4979,
'longitude' => 127.0276
],
'radiusMeters' => 25050
],
'engineSettings' => [
'CHATGPT' => [
'samples' => 5
],
'GOOGLE' => [
'intervalHours' => 168
]
],
'webhookUrl' => '<string>',
'analysis' => false
]),
CURLOPT_HTTPHEADER => [
"Authorization: Bearer <token>",
"Content-Type: application/json"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"strings"
"net/http"
"io"
)
func main() {
url := "https://api.querying.ai/v1/monitors/{id}"
payload := strings.NewReader("{\n \"name\": \"<string>\",\n \"category\": \"<string>\",\n \"promptTopics\": {},\n \"engines\": [],\n \"prompts\": [\n \"<string>\"\n ],\n \"aliases\": [\n \"<string>\"\n ],\n \"domains\": [\n \"<string>\"\n ],\n \"country\": \"<string>\",\n \"competitors\": [\n {\n \"name\": \"<string>\",\n \"aliases\": [\n \"<string>\"\n ]\n }\n ],\n \"alertBelowPct\": 50,\n \"intervalHours\": 84,\n \"enabled\": true,\n \"location\": {\n \"latitude\": 37.4979,\n \"longitude\": 127.0276\n },\n \"grid\": {\n \"center\": {\n \"latitude\": 37.4979,\n \"longitude\": 127.0276\n },\n \"radiusMeters\": 25050\n },\n \"engineSettings\": {\n \"CHATGPT\": {\n \"samples\": 5\n },\n \"GOOGLE\": {\n \"intervalHours\": 168\n }\n },\n \"webhookUrl\": \"<string>\",\n \"analysis\": false\n}")
req, _ := http.NewRequest("PATCH", url, payload)
req.Header.Add("Authorization", "Bearer <token>")
req.Header.Add("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.patch("https://api.querying.ai/v1/monitors/{id}")
.header("Authorization", "Bearer <token>")
.header("Content-Type", "application/json")
.body("{\n \"name\": \"<string>\",\n \"category\": \"<string>\",\n \"promptTopics\": {},\n \"engines\": [],\n \"prompts\": [\n \"<string>\"\n ],\n \"aliases\": [\n \"<string>\"\n ],\n \"domains\": [\n \"<string>\"\n ],\n \"country\": \"<string>\",\n \"competitors\": [\n {\n \"name\": \"<string>\",\n \"aliases\": [\n \"<string>\"\n ]\n }\n ],\n \"alertBelowPct\": 50,\n \"intervalHours\": 84,\n \"enabled\": true,\n \"location\": {\n \"latitude\": 37.4979,\n \"longitude\": 127.0276\n },\n \"grid\": {\n \"center\": {\n \"latitude\": 37.4979,\n \"longitude\": 127.0276\n },\n \"radiusMeters\": 25050\n },\n \"engineSettings\": {\n \"CHATGPT\": {\n \"samples\": 5\n },\n \"GOOGLE\": {\n \"intervalHours\": 168\n }\n },\n \"webhookUrl\": \"<string>\",\n \"analysis\": false\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.querying.ai/v1/monitors/{id}")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Patch.new(url)
request["Authorization"] = 'Bearer <token>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"name\": \"<string>\",\n \"category\": \"<string>\",\n \"promptTopics\": {},\n \"engines\": [],\n \"prompts\": [\n \"<string>\"\n ],\n \"aliases\": [\n \"<string>\"\n ],\n \"domains\": [\n \"<string>\"\n ],\n \"country\": \"<string>\",\n \"competitors\": [\n {\n \"name\": \"<string>\",\n \"aliases\": [\n \"<string>\"\n ]\n }\n ],\n \"alertBelowPct\": 50,\n \"intervalHours\": 84,\n \"enabled\": true,\n \"location\": {\n \"latitude\": 37.4979,\n \"longitude\": 127.0276\n },\n \"grid\": {\n \"center\": {\n \"latitude\": 37.4979,\n \"longitude\": 127.0276\n },\n \"radiusMeters\": 25050\n },\n \"engineSettings\": {\n \"CHATGPT\": {\n \"samples\": 5\n },\n \"GOOGLE\": {\n \"intervalHours\": 168\n }\n },\n \"webhookUrl\": \"<string>\",\n \"analysis\": false\n}"
response = http.request(request)
puts response.read_body인증
Your API key, sent as Authorization: Bearer <key>.
경로 매개변수
본문
Any subset of the definition. Fields that are absent are left unchanged; changing intervalHours or re-enabling restarts the schedule clock from now.
80Accepted only when it equals the monitor's own mode: a monitor's mode is fixed at creation, and a different value is a 400.
BRAND, CATEGORY CATEGORY monitors only.
1 - 80CATEGORY monitors only. Each key must be a prompt the monitor holds after the edit; removing a prompt removes its entry.
Show child attributes
Show child attributes
An array of strings, or a single newline-separated string (the shape a dashboard textarea submits). Entries are trimmed, blank lines dropped and duplicates removed.
An engine a monitor can schedule: the prompt surfaces sold to customers plus the deprecated NAVER alias. GOOGLE_AIO and GOOGLE_AIMODE are accepted as input aliases and echoed as GOOGLE and AIMODE. CITATION_ANALYSIS is an analysis task, not a prompt surface, and cannot be scheduled on a monitor.
CHATGPT, GEMINI, PERPLEXITY, GOOGLE, AIMODE, NAVER_AI_BRIEF, NAVER_AI_TAB, NAVER An array of strings, or a single newline-separated string (the shape a dashboard textarea submits). Entries are trimmed, blank lines dropped and duplicates removed.
2000An array of strings, or a single newline-separated string (the shape a dashboard textarea submits). Entries are trimmed, blank lines dropped and duplicates removed.
An array of strings, or a single newline-separated string (the shape a dashboard textarea submits). Entries are trimmed, blank lines dropped and duplicates removed.
Show child attributes
Show child attributes
1 <= x <= 1001 <= x <= 168Pause or resume. Resuming restarts the clock from now.
Ask every task from this point (ChatGPT, Gemini, Google AI Overview and AI Mode only). Exclusive with grid; setting one clears the other, null asks for the whole country.
Show child attributes
Show child attributes
{ "latitude": 37.4979, "longitude": 127.0276 }
Ask every prompt and engine from each point of this grid. Each engine in a run adds prompts × size² × its samples tasks; the first run, which every engine joins, must stay within the account's tasksPerRun limit.
Show child attributes
Show child attributes
Per-engine cadence and answers per prompt, keyed by engine. An engine without an entry joins every run once. Values equal to the defaults are dropped, and an update that removes an engine removes its entry.
Show child attributes
Show child attributes
{ "CHATGPT": { "samples": 5 }, "GOOGLE": { "intervalHours": 168 } }
HTTPS URL on a public host that receives change events (see the monitorEvent webhook). Set it with an API key: events are signed with the key that sets it, so sending it again with a new key moves the signing to that key. null turns events off.
Ask every task for include.analysis with this monitor's names, domains and competitors. 2 extra credits per analyzed task.
curl --request PATCH \
--url https://api.querying.ai/v1/monitors/{id} \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '
{
"name": "<string>",
"category": "<string>",
"promptTopics": {},
"engines": [],
"prompts": [
"<string>"
],
"aliases": [
"<string>"
],
"domains": [
"<string>"
],
"country": "<string>",
"competitors": [
{
"name": "<string>",
"aliases": [
"<string>"
]
}
],
"alertBelowPct": 50,
"intervalHours": 84,
"enabled": true,
"location": {
"latitude": 37.4979,
"longitude": 127.0276
},
"grid": {
"center": {
"latitude": 37.4979,
"longitude": 127.0276
},
"radiusMeters": 25050
},
"engineSettings": {
"CHATGPT": {
"samples": 5
},
"GOOGLE": {
"intervalHours": 168
}
},
"webhookUrl": "<string>",
"analysis": false
}
'import requests
url = "https://api.querying.ai/v1/monitors/{id}"
payload = {
"name": "<string>",
"category": "<string>",
"promptTopics": {},
"engines": [],
"prompts": ["<string>"],
"aliases": ["<string>"],
"domains": ["<string>"],
"country": "<string>",
"competitors": [
{
"name": "<string>",
"aliases": ["<string>"]
}
],
"alertBelowPct": 50,
"intervalHours": 84,
"enabled": True,
"location": {
"latitude": 37.4979,
"longitude": 127.0276
},
"grid": {
"center": {
"latitude": 37.4979,
"longitude": 127.0276
},
"radiusMeters": 25050
},
"engineSettings": {
"CHATGPT": { "samples": 5 },
"GOOGLE": { "intervalHours": 168 }
},
"webhookUrl": "<string>",
"analysis": False
}
headers = {
"Authorization": "Bearer <token>",
"Content-Type": "application/json"
}
response = requests.patch(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'PATCH',
headers: {Authorization: 'Bearer <token>', 'Content-Type': 'application/json'},
body: JSON.stringify({
name: '<string>',
category: '<string>',
promptTopics: {},
engines: [],
prompts: ['<string>'],
aliases: ['<string>'],
domains: ['<string>'],
country: '<string>',
competitors: [{name: '<string>', aliases: ['<string>']}],
alertBelowPct: 50,
intervalHours: 84,
enabled: true,
location: {latitude: 37.4979, longitude: 127.0276},
grid: {center: {latitude: 37.4979, longitude: 127.0276}, radiusMeters: 25050},
engineSettings: {CHATGPT: {samples: 5}, GOOGLE: {intervalHours: 168}},
webhookUrl: '<string>',
analysis: false
})
};
fetch('https://api.querying.ai/v1/monitors/{id}', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://api.querying.ai/v1/monitors/{id}",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "PATCH",
CURLOPT_POSTFIELDS => json_encode([
'name' => '<string>',
'category' => '<string>',
'promptTopics' => [
],
'engines' => [
],
'prompts' => [
'<string>'
],
'aliases' => [
'<string>'
],
'domains' => [
'<string>'
],
'country' => '<string>',
'competitors' => [
[
'name' => '<string>',
'aliases' => [
'<string>'
]
]
],
'alertBelowPct' => 50,
'intervalHours' => 84,
'enabled' => true,
'location' => [
'latitude' => 37.4979,
'longitude' => 127.0276
],
'grid' => [
'center' => [
'latitude' => 37.4979,
'longitude' => 127.0276
],
'radiusMeters' => 25050
],
'engineSettings' => [
'CHATGPT' => [
'samples' => 5
],
'GOOGLE' => [
'intervalHours' => 168
]
],
'webhookUrl' => '<string>',
'analysis' => false
]),
CURLOPT_HTTPHEADER => [
"Authorization: Bearer <token>",
"Content-Type: application/json"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"strings"
"net/http"
"io"
)
func main() {
url := "https://api.querying.ai/v1/monitors/{id}"
payload := strings.NewReader("{\n \"name\": \"<string>\",\n \"category\": \"<string>\",\n \"promptTopics\": {},\n \"engines\": [],\n \"prompts\": [\n \"<string>\"\n ],\n \"aliases\": [\n \"<string>\"\n ],\n \"domains\": [\n \"<string>\"\n ],\n \"country\": \"<string>\",\n \"competitors\": [\n {\n \"name\": \"<string>\",\n \"aliases\": [\n \"<string>\"\n ]\n }\n ],\n \"alertBelowPct\": 50,\n \"intervalHours\": 84,\n \"enabled\": true,\n \"location\": {\n \"latitude\": 37.4979,\n \"longitude\": 127.0276\n },\n \"grid\": {\n \"center\": {\n \"latitude\": 37.4979,\n \"longitude\": 127.0276\n },\n \"radiusMeters\": 25050\n },\n \"engineSettings\": {\n \"CHATGPT\": {\n \"samples\": 5\n },\n \"GOOGLE\": {\n \"intervalHours\": 168\n }\n },\n \"webhookUrl\": \"<string>\",\n \"analysis\": false\n}")
req, _ := http.NewRequest("PATCH", url, payload)
req.Header.Add("Authorization", "Bearer <token>")
req.Header.Add("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.patch("https://api.querying.ai/v1/monitors/{id}")
.header("Authorization", "Bearer <token>")
.header("Content-Type", "application/json")
.body("{\n \"name\": \"<string>\",\n \"category\": \"<string>\",\n \"promptTopics\": {},\n \"engines\": [],\n \"prompts\": [\n \"<string>\"\n ],\n \"aliases\": [\n \"<string>\"\n ],\n \"domains\": [\n \"<string>\"\n ],\n \"country\": \"<string>\",\n \"competitors\": [\n {\n \"name\": \"<string>\",\n \"aliases\": [\n \"<string>\"\n ]\n }\n ],\n \"alertBelowPct\": 50,\n \"intervalHours\": 84,\n \"enabled\": true,\n \"location\": {\n \"latitude\": 37.4979,\n \"longitude\": 127.0276\n },\n \"grid\": {\n \"center\": {\n \"latitude\": 37.4979,\n \"longitude\": 127.0276\n },\n \"radiusMeters\": 25050\n },\n \"engineSettings\": {\n \"CHATGPT\": {\n \"samples\": 5\n },\n \"GOOGLE\": {\n \"intervalHours\": 168\n }\n },\n \"webhookUrl\": \"<string>\",\n \"analysis\": false\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.querying.ai/v1/monitors/{id}")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Patch.new(url)
request["Authorization"] = 'Bearer <token>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"name\": \"<string>\",\n \"category\": \"<string>\",\n \"promptTopics\": {},\n \"engines\": [],\n \"prompts\": [\n \"<string>\"\n ],\n \"aliases\": [\n \"<string>\"\n ],\n \"domains\": [\n \"<string>\"\n ],\n \"country\": \"<string>\",\n \"competitors\": [\n {\n \"name\": \"<string>\",\n \"aliases\": [\n \"<string>\"\n ]\n }\n ],\n \"alertBelowPct\": 50,\n \"intervalHours\": 84,\n \"enabled\": true,\n \"location\": {\n \"latitude\": 37.4979,\n \"longitude\": 127.0276\n },\n \"grid\": {\n \"center\": {\n \"latitude\": 37.4979,\n \"longitude\": 127.0276\n },\n \"radiusMeters\": 25050\n },\n \"engineSettings\": {\n \"CHATGPT\": {\n \"samples\": 5\n },\n \"GOOGLE\": {\n \"intervalHours\": 168\n }\n },\n \"webhookUrl\": \"<string>\",\n \"analysis\": false\n}"
response = http.request(request)
puts response.read_body