Read series
GET
/v1/monitors/{monitorId}/observation-series Get a measurement's values over time, grouped into time buckets, ready to chart.
- Authentication
- SignalSitter API credential or Clerk session JWT · REST guide
- Operation ID
readMonitorObservationSeries
Parameters
Section titled “Parameters”Path
monitorIdMonitorIdRequiredImmutable public monitor identifier, normally sufficient within the verified organization.
- Minimum length
1 - Maximum length
128 - Pattern
^[A-Za-z0-9][A-Za-z0-9_-]*$
Query
jurisdictionMonitorJurisdictionOptional disambiguator used only when this organization owns the same monitor ID in more than one jurisdiction.
One of
"unrestricted""eu""us""fedramp"
sincestringRequiredInclusive RFC 3339 lower bound for accepted observation timestamps.
- Format
date-time
untilstringRequiredInclusive RFC 3339 upper bound for accepted observation timestamps.
- Format
date-time
Headers
X-Correlation-IDCorrelationIdOptional caller correlation identifier propagated to the response.
- Minimum length
1 - Maximum length
128 - Pattern
^[A-Za-z0-9][A-Za-z0-9._:/-]*$
Request body
Section titled “Request body”No request body.
Responses
Section titled “Responses”200Successful response
application/json
MonitorObservationSeries- The series window ends after it starts.
- Every non-empty bucket keeps its accepted timestamps inside its ordered bucket bounds.
- Every measurement mean stays between its recorded minimum and maximum.
coverageobject3 properties
availableFromstring- Format
date-time - Pattern
^(?:(?:\d\d[2468][048]|\d\d[13579][26]|\d\d0[48]|[02468][048]00|[13579][26]00)-02-29|\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\d|30)|(?:02)-(?:0[1-9]|1\d|2[0-8])))T(?:(?:[01]\d|2[0-3]):[0-5]\d(?::[0-5]\d(?:\.\d+)?)?(?:Z|([+-](?:[01]\d|2[0-3]):[0-5]\d)))$
availableThroughstring- Format
date-time - Pattern
^(?:(?:\d\d[2468][048]|\d\d[13579][26]|\d\d0[48]|[02468][048]00|[13579][26]00)-02-29|\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\d|30)|(?:02)-(?:0[1-9]|1\d|2[0-8])))T(?:(?:[01]\d|2[0-3]):[0-5]\d(?::[0-5]\d(?:\.\d+)?)?(?:Z|([+-](?:[01]\d|2[0-3]):[0-5]\d)))$
truncatedbooleanValue
true
downsampledbooleanRequiredomittedMeasurementCountintegerRequired- Minimum
0 - Maximum
9007199254740991
pointsarray of objectRequired- Maximum items
32
Each item
6 properties
bucketEndedAtstringRequired- Format
date-time - Pattern
^(?:(?:\d\d[2468][048]|\d\d[13579][26]|\d\d0[48]|[02468][048]00|[13579][26]00)-02-29|\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\d|30)|(?:02)-(?:0[1-9]|1\d|2[0-8])))T(?:(?:[01]\d|2[0-3]):[0-5]\d(?::[0-5]\d(?:\.\d+)?)?(?:Z|([+-](?:[01]\d|2[0-3]):[0-5]\d)))$
bucketIndexintegerRequired- Minimum
0 - Maximum
31
bucketStartedAtstringRequired- Format
date-time - Pattern
^(?:(?:\d\d[2468][048]|\d\d[13579][26]|\d\d0[48]|[02468][048]00|[13579][26]00)-02-29|\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\d|30)|(?:02)-(?:0[1-9]|1\d|2[0-8])))T(?:(?:[01]\d|2[0-3]):[0-5]\d(?::[0-5]\d(?:\.\d+)?)?(?:Z|([+-](?:[01]\d|2[0-3]):[0-5]\d)))$
firstAcceptedAtstringRequired- Format
date-time - Pattern
^(?:(?:\d\d[2468][048]|\d\d[13579][26]|\d\d0[48]|[02468][048]00|[13579][26]00)-02-29|\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\d|30)|(?:02)-(?:0[1-9]|1\d|2[0-8])))T(?:(?:[01]\d|2[0-3]):[0-5]\d(?::[0-5]\d(?:\.\d+)?)?(?:Z|([+-](?:[01]\d|2[0-3]):[0-5]\d)))$
lastAcceptedAtstringRequired- Format
date-time - Pattern
^(?:(?:\d\d[2468][048]|\d\d[13579][26]|\d\d0[48]|[02468][048]00|[13579][26]00)-02-29|\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\d|30)|(?:02)-(?:0[1-9]|1\d|2[0-8])))T(?:(?:[01]\d|2[0-3]):[0-5]\d(?::[0-5]\d(?:\.\d+)?)?(?:Z|([+-](?:[01]\d|2[0-3]):[0-5]\d)))$
measurementsarray of objectRequired- Maximum items
32
Each item
6 properties
countintegerRequired- Greater than
0 - Maximum
9007199254740991
flaggedbooleanRequiredmaximumnumberRequiredmeannumberRequiredmeasurementKeystringRequired- Minimum length
1 - Maximum length
64 - Pattern
^[a-z][a-z0-9_]*$
minimumnumberRequiredresolutionSecondsintegerRequired- Greater than
0 - Maximum
9007199254740991
sincestringRequired- Format
date-time - Pattern
^(?:(?:\d\d[2468][048]|\d\d[13579][26]|\d\d0[48]|[02468][048]00|[13579][26]00)-02-29|\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\d|30)|(?:02)-(?:0[1-9]|1\d|2[0-8])))T(?:(?:[01]\d|2[0-3]):[0-5]\d(?::[0-5]\d(?:\.\d+)?)?(?:Z|([+-](?:[01]\d|2[0-3]):[0-5]\d)))$
untilstringRequired- Format
date-time - Pattern
^(?:(?:\d\d[2468][048]|\d\d[13579][26]|\d\d0[48]|[02468][048]00|[13579][26]00)-02-29|\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\d|30)|(?:02)-(?:0[1-9]|1\d|2[0-8])))T(?:(?:[01]\d|2[0-3]):[0-5]\d(?::[0-5]\d(?:\.\d+)?)?(?:Z|([+-](?:[01]\d|2[0-3]):[0-5]\d)))$
2 response headers
X-Correlation-IDCorrelationIdRequiredCorrelation identifier shared by related operations.
- Minimum length
1 - Maximum length
128 - Pattern
^[A-Za-z0-9][A-Za-z0-9._:/-]*$
X-Request-IDRequestIdRequiredRequest identifier for this response.
- Minimum length
1 - Maximum length
128 - Pattern
^[A-Za-z0-9][A-Za-z0-9._:/-]*$
Errors
- 400Invalid request
- 401Authentication required
- 403Permission denied
- 404Resource not found
- 429Authentication rate limited
- 500Internal server error
- 503Service temporarily unavailable
Error bodyProblemDetails
application/problem+json
ProblemDetails- URI references must pass full URI-reference parsing, including percent escapes, authority brackets, and scheme syntax.
- Documentation links must parse as credential-free HTTPS URLs or root-relative paths.
- retryAfterSeconds is allowed only when retryable is true.
codestringRequired- Minimum length
1 - Maximum length
128 - Pattern
^signalsitter\.[a-z][a-z0-9]*(?:[._][a-z0-9]+)*$
correlationIdstringRequired- Minimum length
1 - Maximum length
128 - Pattern
^[A-Za-z0-9][A-Za-z0-9._:/-]*$
detailstringRequired- Minimum length
1 - Maximum length
1024 - Pattern
^[^\u0000-\u001F\u007F]*$
fieldErrorsarray of object- Maximum items
32
Each item
3 properties
codestringRequired- Minimum length
1 - Maximum length
128 - Pattern
^[a-z][a-z0-9_]*$
messagestringRequired- Minimum length
1 - Maximum length
512 - Pattern
^[^\u0000-\u001F\u007F]*$
pathstringRequired- Maximum length
256
All of
Part 1
Part 2
instancestring- Minimum length
1 - Maximum length
512 - Pattern
^[^\s\u0000-\u001F\u007F]+$
limitobject7 properties
attemptedinteger- Minimum
0 - Maximum
9007199254740991
currentinteger- Minimum
0 - Maximum
9007199254740991
dimensionstringRequiredOne of
"active_monitors""beat_cadence""minimum_interval_seconds""measurements_per_observation""stored_observations""observation_retention_seconds""callback_endpoints""detector_feature""api_requests_per_minute""mcp_requests_per_minute""service_state""entitlement_lease"
limitinteger- Minimum
0 - Maximum
9007199254740991
planobject3 properties
idstringRequiredOne of
"free""builder""smart""scale"
namestringRequired- Minimum length
1 - Maximum length
64 - Pattern
^[^\p{Cc}\p{Cf}\p{Zl}\p{Zp}]+$
versionintegerRequired- Greater than
0 - Maximum
9007199254740991
remediationstringRequiredOne of
"upgrade_plan""reduce_usage""increase_interval""remove_feature""retry_after_refresh""contact_support""export_data"
serviceStatestringOne of
"active""payment_grace""abuse_suspended""canceled""deleting"
remediationarray of object- Maximum items
8
Each item
3 properties
codestringRequired- Minimum length
1 - Maximum length
128 - Pattern
^[a-z][a-z0-9_]*$
documentationstring- Minimum length
1 - Maximum length
512
All of
Part 1
Part 2
messagestringRequired- Minimum length
1 - Maximum length
512 - Pattern
^[^\u0000-\u001F\u007F]*$
retryablebooleanRequiredretryAfterSecondsinteger- Greater than
0 - Maximum
86400
statusintegerRequired- Minimum
400 - Maximum
599
titlestringRequired- Minimum length
1 - Maximum length
160 - Pattern
^[^\u0000-\u001F\u007F]*$
typestringRequired- Minimum length
1 - Maximum length
512 - Pattern
^[^\s\u0000-\u001F\u007F]+$
Operation contract
Section titled “Operation contract”The operation exactly as it appears in the generated contract. References resolve within the OpenAPI document.
Show raw OpenAPI for readMonitorObservationSeries
{ "operationId": "readMonitorObservationSeries", "parameters": [ { "description": "Optional caller correlation identifier propagated to the response.", "in": "header", "name": "X-Correlation-ID", "required": false, "schema": { "$ref": "#/components/schemas/CorrelationId" } }, { "description": "Immutable public monitor identifier, normally sufficient within the verified organization.", "in": "path", "name": "monitorId", "required": true, "schema": { "$ref": "#/components/schemas/MonitorId" } }, { "description": "Optional disambiguator used only when this organization owns the same monitor ID in more than one jurisdiction.", "in": "query", "name": "jurisdiction", "required": false, "schema": { "$ref": "#/components/schemas/MonitorJurisdiction" } }, { "description": "Inclusive RFC 3339 lower bound for accepted observation timestamps.", "in": "query", "name": "since", "required": true, "schema": { "format": "date-time", "type": "string" } }, { "description": "Inclusive RFC 3339 upper bound for accepted observation timestamps.", "in": "query", "name": "until", "required": true, "schema": { "format": "date-time", "type": "string" } } ], "responses": { "200": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/MonitorObservationSeries" } } }, "description": "Successful response", "headers": { "X-Correlation-ID": { "description": "Correlation identifier shared by related operations.", "required": true, "schema": { "$ref": "#/components/schemas/CorrelationId" } }, "X-Request-ID": { "description": "Request identifier for this response.", "required": true, "schema": { "$ref": "#/components/schemas/RequestId" } } } }, "400": { "content": { "application/problem+json": { "schema": { "$ref": "#/components/schemas/ProblemDetails" } } }, "description": "Invalid request", "headers": { "X-Correlation-ID": { "description": "Correlation identifier shared by related operations.", "required": true, "schema": { "$ref": "#/components/schemas/CorrelationId" } }, "X-Request-ID": { "description": "Request identifier for this response.", "required": true, "schema": { "$ref": "#/components/schemas/RequestId" } } } }, "401": { "content": { "application/problem+json": { "schema": { "$ref": "#/components/schemas/ProblemDetails" } } }, "description": "Authentication required", "headers": { "X-Correlation-ID": { "description": "Correlation identifier shared by related operations.", "required": true, "schema": { "$ref": "#/components/schemas/CorrelationId" } }, "X-Request-ID": { "description": "Request identifier for this response.", "required": true, "schema": { "$ref": "#/components/schemas/RequestId" } } } }, "403": { "content": { "application/problem+json": { "schema": { "$ref": "#/components/schemas/ProblemDetails" } } }, "description": "Permission denied", "headers": { "X-Correlation-ID": { "description": "Correlation identifier shared by related operations.", "required": true, "schema": { "$ref": "#/components/schemas/CorrelationId" } }, "X-Request-ID": { "description": "Request identifier for this response.", "required": true, "schema": { "$ref": "#/components/schemas/RequestId" } } } }, "404": { "content": { "application/problem+json": { "schema": { "$ref": "#/components/schemas/ProblemDetails" } } }, "description": "Resource not found", "headers": { "X-Correlation-ID": { "description": "Correlation identifier shared by related operations.", "required": true, "schema": { "$ref": "#/components/schemas/CorrelationId" } }, "X-Request-ID": { "description": "Request identifier for this response.", "required": true, "schema": { "$ref": "#/components/schemas/RequestId" } } } }, "429": { "content": { "application/problem+json": { "schema": { "$ref": "#/components/schemas/ProblemDetails" } } }, "description": "Authentication rate limited", "headers": { "Retry-After": { "description": "Required retry delay in seconds.", "required": true, "schema": { "$ref": "#/components/schemas/RetryAfterHeader" } }, "X-Correlation-ID": { "description": "Correlation identifier shared by related operations.", "required": true, "schema": { "$ref": "#/components/schemas/CorrelationId" } }, "X-Request-ID": { "description": "Request identifier for this response.", "required": true, "schema": { "$ref": "#/components/schemas/RequestId" } } } }, "500": { "content": { "application/problem+json": { "schema": { "$ref": "#/components/schemas/ProblemDetails" } } }, "description": "Internal server error", "headers": { "X-Correlation-ID": { "description": "Correlation identifier shared by related operations.", "required": true, "schema": { "$ref": "#/components/schemas/CorrelationId" } }, "X-Request-ID": { "description": "Request identifier for this response.", "required": true, "schema": { "$ref": "#/components/schemas/RequestId" } } } }, "503": { "content": { "application/problem+json": { "schema": { "$ref": "#/components/schemas/ProblemDetails" } } }, "description": "Service temporarily unavailable", "headers": { "Retry-After": { "description": "Required retry delay in seconds.", "required": true, "schema": { "$ref": "#/components/schemas/RetryAfterHeader" } }, "X-Correlation-ID": { "description": "Correlation identifier shared by related operations.", "required": true, "schema": { "$ref": "#/components/schemas/CorrelationId" } }, "X-Request-ID": { "description": "Request identifier for this response.", "required": true, "schema": { "$ref": "#/components/schemas/RequestId" } } } } }, "security": [ { "apiCredential": [] }, { "clerkSession": [] } ], "summary": "Read a bounded time-bucketed numerical observation series", "tags": [ "Monitors" ]}