Get a monitor's snapshot
curl --request GET \
--url https://api.spidra.io/api/monitors/{monitorId}/snapshot \
--header 'Authorization: Bearer <token>'import requests
url = "https://api.spidra.io/api/monitors/{monitorId}/snapshot"
headers = {"Authorization": "Bearer <token>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {Authorization: 'Bearer <token>'}};
fetch('https://api.spidra.io/api/monitors/{monitorId}/snapshot', 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.spidra.io/api/monitors/{monitorId}/snapshot",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
CURLOPT_HTTPHEADER => [
"Authorization: Bearer <token>"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"net/http"
"io"
)
func main() {
url := "https://api.spidra.io/api/monitors/{monitorId}/snapshot"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("Authorization", "Bearer <token>")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.get("https://api.spidra.io/api/monitors/{monitorId}/snapshot")
.header("Authorization", "Bearer <token>")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.spidra.io/api/monitors/{monitorId}/snapshot")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
request["Authorization"] = 'Bearer <token>'
response = http.request(request)
puts response.read_body{
"status": "success",
"monitorId": "d6761e12-b011-4633-a593-fa6be2ef466c",
"sources": [
{
"sourceId": "4849f762b267",
"label": "example.com",
"kind": "pages",
"updatedAt": "2026-11-10T10:06:26.000Z",
"pageCount": 1,
"pages": [
{
"url": "https://example.com",
"text": "Example Domain\nThis domain is for use in documentation examples without needing permission.",
"fields": null
}
],
"truncated": false
}
]
}Monitors
Get a monitor's snapshot
Returns what the monitor holds now: for each source, the rows (template and preset sources) or pages (URL sources) its last check saw, with when that was. Each check is compared with this, so it’s the monitor’s current view of the data. Use it to sync your own database, for example a job board’s current jobs.
Free, and not rate limited. Before a source’s first check finishes, it has kind: "none".
GET
/
monitors
/
{monitorId}
/
snapshot
Get a monitor's snapshot
curl --request GET \
--url https://api.spidra.io/api/monitors/{monitorId}/snapshot \
--header 'Authorization: Bearer <token>'import requests
url = "https://api.spidra.io/api/monitors/{monitorId}/snapshot"
headers = {"Authorization": "Bearer <token>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {Authorization: 'Bearer <token>'}};
fetch('https://api.spidra.io/api/monitors/{monitorId}/snapshot', 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.spidra.io/api/monitors/{monitorId}/snapshot",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
CURLOPT_HTTPHEADER => [
"Authorization: Bearer <token>"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"net/http"
"io"
)
func main() {
url := "https://api.spidra.io/api/monitors/{monitorId}/snapshot"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("Authorization", "Bearer <token>")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.get("https://api.spidra.io/api/monitors/{monitorId}/snapshot")
.header("Authorization", "Bearer <token>")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.spidra.io/api/monitors/{monitorId}/snapshot")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
request["Authorization"] = 'Bearer <token>'
response = http.request(request)
puts response.read_body{
"status": "success",
"monitorId": "d6761e12-b011-4633-a593-fa6be2ef466c",
"sources": [
{
"sourceId": "4849f762b267",
"label": "example.com",
"kind": "pages",
"updatedAt": "2026-11-10T10:06:26.000Z",
"pageCount": 1,
"pages": [
{
"url": "https://example.com",
"text": "Example Domain\nThis domain is for use in documentation examples without needing permission.",
"fields": null
}
],
"truncated": false
}
]
}Authorizations
BearerAuthApiKeyAuth
Query Parameters
Was this page helpful?

