Checkly Check Results API
The Check Results API from Checkly — 4 operation(s) for check results.
The Check Results API from Checkly — 4 operation(s) for check results.
Every API here is available over the APIs.io API and to AI agents over MCP.
One button, every client — Claude, Cursor, VS Code and the rest.
https://apis.io/mcp
find_apisBrowse and filter every API in the catalog.get_api_artifactsOne API's artifacts, grouped by type.get_openapiThe primary OpenAPI for this API.find_similar_apisAPIs that look like this one.apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.resolveTurn a domain, URL or GitHub org into the provider it belongs to.find_cohortsEvery scored population of providers in the catalog.curl "https://apis.io/api/v1/apis/checkly-check-results-api"
curl "https://apis.io/api/v1/apis?limit=25"
Discovery needs no key. Ratings and market analysis are Pro.
Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.
A second provider on the same verified email joins the account you already have.
openapi: 3.2.0
info:
title: Checkly Public Check results API
version: v1
description: These are the docs for the newly released Checkly Public API.<br />If you have any questions, please do not hesitate to get in touch with us.
servers:
- url: https://api.checklyhq.com
security:
- Bearer: []
tags:
- name: Check results
paths:
/v1/check-results/{checkId}:
get:
summary: Lists all check results
operationId: getV1CheckresultsCheckid
description: <b>[DEPRECATED] This endpoint will be removed soon. Please use the <code>GET /v2/check-results/{checkId}</code> endpoint instead.</b><br>Lists the full, raw check results for a specific check. We keep raw results for 30 days. After 30 days they are erased. However, we keep the rolled up results for an indefinite period.<br><br>You can filter by check type and result type to narrow down the list. Use the `to` and `from` parameters to specify a date range (UNIX timestamp in seconds). Depending on the check type, some fields might be null.<br><br>This endpoint will return data within a 6-hour timeframe. If the `from` and `to` params are set, they must be at most six hours apart. If none are set, we will consider the `to` param to be now and the `from` param to be six hours earlier. If only the `to` param is set we will set `from` to be six hours earlier. On the contrary, if only the `from` param is set we will consider the `to` param to be six hours later.<br><br><b>Rate-limiting is applied to this endpoint, you can send 60 requests / 60 seconds at most.<b>
tags:
- Check results
responses:
'200':
description: Successful
content:
application/json:
schema:
$ref: '#/components/schemas/CheckResultList'
'400':
description: Bad Request
content:
application/json:
schema:
$ref: '#/components/schemas/ApiError'
'401':
description: Unauthorized
content:
application/json:
schema:
$ref: '#/components/schemas/ApiError'
'402':
description: Payment Required
content:
application/json:
schema:
$ref: '#/components/schemas/ApiError'
'403':
description: Forbidden
content:
application/json:
schema:
$ref: '#/components/schemas/ApiError'
'429':
description: Too Many Requests
content:
application/json:
schema:
$ref: '#/components/schemas/ApiError'
deprecated: true
parameters:
- schema:
type: string
minLength: 1
format: uuid
required: true
name: checkId
in: path
- schema:
type: integer
minimum: 1
maximum: 100
default: 10
description: Limit the number of results to fetch (default 10)
required: false
description: Limit the number of results to fetch (default 10)
name: limit
in: query
- schema:
type: string
enum:
- us-east-1
- us-east-2
- us-west-1
- us-west-2
- ca-central-1
- sa-east-1
- eu-west-1
- eu-central-1
- eu-west-2
- eu-west-3
- eu-north-1
- eu-south-1
- me-south-1
- ap-southeast-1
- ap-northeast-1
- ap-east-1
- ap-southeast-2
- ap-southeast-3
- ap-northeast-2
- ap-northeast-3
- ap-south-1
- af-south-1
description: Provide a data center location, e.g. "eu-west-1" to filter by location
required: false
description: Provide a data center location, e.g. "eu-west-1" to filter by location
name: location
in: query
- schema:
type: string
enum:
- AGENTIC
- API
- BROWSER
- HEARTBEAT
- ICMP
- MULTI_STEP
- TCP
- PLAYWRIGHT
- TRACEROUTE
- URL
- DNS
- SSL
- GRPC
description: The type of the check
required: false
description: The type of the check
name: checkType
in: query
- schema:
type: boolean
description: Check result has one or more failures
required: false
description: Check result has one or more failures
name: hasFailures
in: query
- schema:
type: string
enum:
- FINAL
- ATTEMPT
- ALL
default: FINAL
description: The check result type (FINAL,ATTEMPT,ALL)
required: false
description: The check result type (FINAL,ATTEMPT,ALL)
name: resultType
in: query
- schema:
type: number
description: Select records up from this UNIX timestamp (>= date). Defaults to now - 6 hours.
required: false
description: Select records up from this UNIX timestamp (>= date). Defaults to now - 6 hours.
name: from
in: query
- schema:
type: number
description: Optional. Select records up to this UNIX timestamp (< date). Defaults to 6 hours after "from".
required: false
description: Optional. Select records up to this UNIX timestamp (< date). Defaults to 6 hours after "from".
name: to
in: query
- schema:
type: number
default: 1
description: Page number
exclusiveMinimum: 0
required: false
description: Page number
name: page
in: query
- schema:
type: string
format: uuid
description: Your Checkly account ID, you can find it at https://app.checklyhq.com/settings/account/general
required: false
description: Your Checkly account ID, you can find it at https://app.checklyhq.com/settings/account/general
name: x-checkly-account
in: header
/v1/check-results/{checkId}/{checkResultId}:
get:
summary: Retrieve a check result
operationId: getV1CheckresultsCheckidCheckresultid
description: Show details of a specific check result.
tags:
- Check results
responses:
'200':
description: Successful
content:
application/json:
schema:
$ref: '#/components/schemas/CheckResult'
'400':
description: Bad Request
content:
application/json:
schema:
$ref: '#/components/schemas/ApiError'
'401':
description: Unauthorized
content:
application/json:
schema:
$ref: '#/components/schemas/ApiError'
'403':
description: Forbidden
content:
application/json:
schema:
$ref: '#/components/schemas/ApiError'
'404':
description: Not Found
content:
application/json:
schema:
$ref: '#/components/schemas/ApiError'
'429':
description: Too Many Requests
content:
application/json:
schema:
$ref: '#/components/schemas/ApiError'
parameters:
- schema:
type: string
minLength: 1
format: uuid
required: true
name: checkId
in: path
- schema:
type: string
minLength: 1
format: uuid
required: true
name: checkResultId
in: path
- schema:
type: string
format: uuid
description: Your Checkly account ID, you can find it at https://app.checklyhq.com/settings/account/general
required: false
description: Your Checkly account ID, you can find it at https://app.checklyhq.com/settings/account/general
name: x-checkly-account
in: header
/v1/check-results/{checkId}/{checkResultId}/assets:
get:
summary: Retrieve a normalized asset manifest for a check result
operationId: getV1CheckresultsCheckidCheckresultidAssets
description: Returns a normalized manifest of downloadable assets for the check result.
tags:
- Check results
responses:
'200':
description: Successful
content:
application/json:
schema:
$ref: '#/components/schemas/AssetManifest'
'400':
description: Bad Request
content:
application/json:
schema:
$ref: '#/components/schemas/ApiError'
'401':
description: Unauthorized
content:
application/json:
schema:
$ref: '#/components/schemas/ApiError'
'403':
description: Forbidden
content:
application/json:
schema:
$ref: '#/components/schemas/ApiError'
'404':
description: Not Found
content:
application/json:
schema:
$ref: '#/components/schemas/ApiError'
'429':
description: Too Many Requests
content:
application/json:
schema:
$ref: '#/components/schemas/ApiError'
parameters:
- schema:
type: string
format: uuid
description: Check ID.
required: true
description: Check ID.
name: checkId
in: path
- schema:
type: string
format: uuid
description: Check result ID.
required: true
description: Check result ID.
name: checkResultId
in: path
- schema:
type: array
items:
type: string
enum:
- log
- trace
- video
- screenshot
- pcap
- report
- file
description: Filter assets by normalized asset type. Repeat the query parameter to include multiple types.
required: false
description: Filter assets by normalized asset type. Repeat the query parameter to include multiple types.
name: type
in: query
- schema:
type: string
maxLength: 200
description: Glob pattern matched case-insensitively against the asset name and archive entry path. Empty patterns are ignored.
required: false
description: Glob pattern matched case-insensitively against the asset name and archive entry path. Empty patterns are ignored.
name: name
in: query
- schema:
type: string
format: uuid
description: Your Checkly account ID, you can find it at https://app.checklyhq.com/settings/account/general
required: false
description: Your Checkly account ID, you can find it at https://app.checklyhq.com/settings/account/general
name: x-checkly-account
in: header
/v2/check-results/{checkId}:
get:
summary: Lists all check results
operationId: getV2CheckresultsCheckid
description: Lists the full, raw check results for a specific check. We keep raw results for 30 days. After 30 days they are erased. However, we keep the rolled up results for an indefinite period.<br><br>You can filter by check type and result type to narrow down the list. Use the `to` and `from` parameters to specify a date range (UNIX timestamp in seconds). Depending on the check type, some fields might be null.<br><br><b>Rate-limiting is applied to this endpoint, you can send 60 requests / 60 seconds at most.<b>
tags:
- Check results
responses:
'200':
description: Successful
content:
application/json:
schema:
$ref: '#/components/schemas/CheckResultListV2'
'400':
description: Bad Request
content:
application/json:
schema:
$ref: '#/components/schemas/ApiError'
'401':
description: Unauthorized
content:
application/json:
schema:
$ref: '#/components/schemas/ApiError'
'402':
description: Payment Required
content:
application/json:
schema:
$ref: '#/components/schemas/ApiError'
'403':
description: Forbidden
content:
application/json:
schema:
$ref: '#/components/schemas/ApiError'
'429':
description: Too Many Requests
content:
application/json:
schema:
$ref: '#/components/schemas/ApiError'
parameters:
- schema:
type: string
minLength: 1
format: uuid
required: true
name: checkId
in: path
- schema:
type: integer
minimum: 1
maximum: 100
default: 10
description: Limit the number of results to fetch (default 10)
required: false
description: Limit the number of results to fetch (default 10)
name: limit
in: query
- schema:
type: string
enum:
- us-east-1
- us-east-2
- us-west-1
- us-west-2
- ca-central-1
- sa-east-1
- eu-west-1
- eu-central-1
- eu-west-2
- eu-west-3
- eu-north-1
- eu-south-1
- me-south-1
- ap-southeast-1
- ap-northeast-1
- ap-east-1
- ap-southeast-2
- ap-southeast-3
- ap-northeast-2
- ap-northeast-3
- ap-south-1
- af-south-1
description: Provide a data center location, e.g. "eu-west-1" to filter by location
required: false
description: Provide a data center location, e.g. "eu-west-1" to filter by location
name: location
in: query
- schema:
type: string
enum:
- AGENTIC
- API
- BROWSER
- HEARTBEAT
- ICMP
- MULTI_STEP
- TCP
- PLAYWRIGHT
- TRACEROUTE
- URL
- DNS
- SSL
- GRPC
description: The type of the check
required: false
description: The type of the check
name: checkType
in: query
- schema:
type: boolean
description: Check result has one or more failures
required: false
description: Check result has one or more failures
name: hasFailures
in: query
- schema:
type: string
enum:
- FINAL
- ATTEMPT
- ALL
default: FINAL
description: The check result type (FINAL,ATTEMPT,ALL)
required: false
description: The check result type (FINAL,ATTEMPT,ALL)
name: resultType
in: query
- schema:
type: number
description: Select records up from this UNIX timestamp (>= date).
required: false
description: Select records up from this UNIX timestamp (>= date).
name: from
in: query
- schema:
type: number
description: Optional. Select records up to this UNIX timestamp (< date).
required: false
description: Optional. Select records up to this UNIX timestamp (< date).
name: to
in: query
- schema:
type: string
description: Cursor parameter to fetch the next page of results. The "nextId" parameter is returned in the response of the previous request. If a response includes a "nextId" parameter set to "null", there are no more results to fetch.
required: false
description: Cursor parameter to fetch the next page of results. The "nextId" parameter is returned in the response of the previous request. If a response includes a "nextId" parameter set to "null", there are no more results to fetch.
name: nextId
in: query
- schema:
type: array
items:
type: string
enum:
- id
- name
- checkId
- hasFailures
- hasErrors
- isDegraded
- isCancelled
- overMaxResponseTime
- runLocation
- startedAt
- stoppedAt
- created_at
- createdAt
- responseTime
- apiCheckResult
- browserCheckResult
- multiStepCheckResult
- agenticCheckResult
- playwrightCheckResult
- tracerouteCheckResult
- grpcCheckResult
- sslCheckResult
- checkRunId
- attempts
- resultType
- sequenceId
- traceId
- errorGroupIds
description: Comma-separated list of check result fields to include in each entry.
required: false
description: Comma-separated list of check result fields to include in each entry.
name: fields
in: query
- schema:
type: string
format: uuid
description: Your Checkly account ID, you can find it at https://app.checklyhq.com/settings/account/general
required: false
description: Your Checkly account ID, you can find it at https://app.checklyhq.com/settings/account/general
name: x-checkly-account
in: header
components:
schemas:
CheckResult:
type: object
properties:
id:
type: string
description: The unique ID of this result.
name:
type: string
description: The name of the check.
checkId:
type: string
description: The ID of the check.
hasFailures:
type: boolean
description: Describes if any failure occurred during this check run.
hasErrors:
type: boolean
description: Describes if an internal error occurred in Checkly's backend.
isDegraded:
type:
- boolean
- 'null'
description: Whether the check is over its degradation limit.
isCancelled:
type: boolean
description: Whether the run was cancelled before completion.
overMaxResponseTime:
type:
- boolean
- 'null'
description: Whether the response time exceeded its limit.
runLocation:
type: string
description: What data center location this check result originated from.
startedAt:
type:
- string
- 'null'
format: date-time
stoppedAt:
type:
- string
- 'null'
format: date-time
created_at:
type: string
format: date-time
responseTime:
type: number
description: Time the check spent producing its result, in milliseconds. For protocol checks this is the measured operation time; for browser, multi-step, Playwright and agentic checks it is the run wall-clock duration.
apiCheckResult:
$ref: '#/components/schemas/CheckResultAPI'
browserCheckResult:
$ref: '#/components/schemas/CheckResultBrowser'
multiStepCheckResult:
$ref: '#/components/schemas/MultiStepResultBrowser'
agenticCheckResult:
$ref: '#/components/schemas/CheckResultAgentic'
playwrightCheckResult:
$ref: '#/components/schemas/CheckResultPlaywright'
tracerouteCheckResult:
$ref: '#/components/schemas/CheckResultTraceroute'
grpcCheckResult:
$ref: '#/components/schemas/CheckResultGrpc'
sslCheckResult:
$ref: '#/components/schemas/CheckResultSsl'
checkRunId:
type: number
description: The id of the specific check run that created this result.
attempts:
type: number
description: How often this check was retried.
resultType:
type: string
enum:
- FINAL
- ATTEMPT
- ALL
description: The type of result.
sequenceId:
type:
- string
- 'null'
format: uuid
description: The sequence ID of the check run.
traceId:
type:
- string
- 'null'
description: OpenTelemetry trace ID associated with this check result.
errorGroupIds:
type:
- array
- 'null'
items:
type: string
format: uuid
default: []
description: IDs of error groups associated with this check result.
required:
- resultType
- traceId
CheckResultPlaywright:
type:
- object
- 'null'
properties:
errors:
type:
- array
- 'null'
items:
$ref: '#/components/schemas/CheckResultFreeformObject'
default: []
description: Per-test Playwright errors recorded during the run.
playwrightTraceFiles:
type:
- array
- 'null'
items:
$ref: '#/components/schemas/CheckResultPlaywrightTraceFile'
default: []
description: Trace file metadata recorded by the runner.
jobLog:
type:
- array
- 'null'
items: {}
description: Check run log results.
jobAssets:
type:
- array
- 'null'
items: {}
description: Assets generated from the check run.
playwrightTestVideos:
type:
- array
- 'null'
items:
type: string
description: Signed URLs for Playwright test videos.
playwrightTestTraces:
type:
- array
- 'null'
items:
type: string
description: Signed URLs for Playwright test traces.
playwrightTestJsonReportFile:
type:
- string
- 'null'
description: Signed URL for the Playwright JSON report.
description: The response data for a Playwright check.
CheckResultProjection:
type: object
properties:
id:
type: string
description: The unique ID of this result.
name:
type: string
description: The name of the check.
checkId:
type: string
description: The ID of the check.
hasFailures:
type: boolean
description: Describes if any failure occurred during this check run.
hasErrors:
type: boolean
description: Describes if an internal error occurred in Checkly's backend.
isDegraded:
type:
- boolean
- 'null'
description: Whether the check is over its degradation limit.
isCancelled:
type: boolean
description: Whether the run was cancelled before completion.
overMaxResponseTime:
type:
- boolean
- 'null'
description: Whether the response time exceeded its limit.
runLocation:
type: string
description: What data center location this check result originated from.
startedAt:
type:
- string
- 'null'
format: date-time
stoppedAt:
type:
- string
- 'null'
format: date-time
created_at:
type: string
format: date-time
responseTime:
type: number
description: Time the check spent producing its result, in milliseconds. For protocol checks this is the measured operation time; for browser, multi-step, Playwright and agentic checks it is the run wall-clock duration.
apiCheckResult:
$ref: '#/components/schemas/CheckResultAPI'
browserCheckResult:
$ref: '#/components/schemas/CheckResultBrowser'
multiStepCheckResult:
$ref: '#/components/schemas/MultiStepResultBrowser'
agenticCheckResult:
$ref: '#/components/schemas/CheckResultAgentic'
playwrightCheckResult:
$ref: '#/components/schemas/CheckResultPlaywright'
tracerouteCheckResult:
$ref: '#/components/schemas/CheckResultTraceroute'
grpcCheckResult:
$ref: '#/components/schemas/CheckResultGrpc'
sslCheckResult:
$ref: '#/components/schemas/CheckResultSsl'
checkRunId:
type: number
description: The id of the specific check run that created this result.
attempts:
type: number
description: How often this check was retried.
resultType:
type: string
enum:
- FINAL
- ATTEMPT
- ALL
description: The type of result.
sequenceId:
type:
- string
- 'null'
format: uuid
description: The sequence ID of the check run.
traceId:
type:
- string
- 'null'
description: OpenTelemetry trace ID associated with this check result.
errorGroupIds:
type:
- array
- 'null'
items:
type: string
format: uuid
default: []
description: IDs of error groups associated with this check result.
createdAt:
type: string
format: date-time
CheckResultBrowser:
type:
- object
- 'null'
properties:
type:
type: string
description: The type of framework the check is using.
traceSummary:
type: object
properties: {}
additionalProperties: {}
description: The summary of errors in the check run.
pages:
type: array
items:
$ref: '#/components/schemas/CheckResultFreeformObject'
description: List of pages used on the check run.
playwrightTestVideos:
type: array
items:
type: string
description: List of Playwright Test videos.
errors:
type: array
items: {}
description: List of errors on the check run.
endTime:
type: number
description: End time of the check run.
startTime:
type: number
description: Start time of the check run.
runtimeVersion:
type: string
description: Active runtime version.
jobLog:
type:
- array
- 'null'
items: {}
description: Check run log results.
jobAssets:
type:
- array
- 'null'
items: {}
description: Assets generated from the check run.
playwrightTestTraces:
type: array
items:
type: string
description: List of Playwright Test traces.
playwrightTestJsonReportFile:
type: string
description: Playwright Test JSON report.
description: The response data for a browser check.
CheckResultListV2:
type: object
properties:
length:
type: number
entries:
type: array
items:
$ref: '#/components/schemas/CheckResultListEntry'
nextId:
type:
- string
- 'null'
required:
- length
CheckResultGrpc:
type:
- object
- 'null'
properties:
grpcStatusCode:
type: number
description: The gRPC status code of the call.
healthStatus:
type:
- number
- 'null'
description: The numeric serving status returned by the gRPC health probe.
timingPhases:
type:
- object
- 'null'
properties: {}
additionalProperties: {}
description: Timing phases for the run.
requestError:
type:
- string
- 'null'
description: Describes if an error occurred on the request.
request:
type:
- object
- 'null'
properties: {}
additionalProperties: {}
description: The gRPC request that was executed.
assertions:
type:
- array
- 'null'
items:
$ref: '#/components/schemas/CheckResultFreeformObject'
description: Assertions evaluated for the run.
response:
type:
- object
- 'null'
properties:
grpcMode:
type: string
host:
type: string
resolvedIp:
type: string
port:
type: number
grpcMethod:
type: string
responseMessage:
type: string
grpcStatusCode:
type: number
grpcStatusMessage:
type: string
healthStatus:
type:
- number
- 'null'
healthStatusLabel:
type: string
metadata:
type:
- array
- 'null'
items:
$ref: '#/components/schemas/CheckResultFreeformObject'
discoveredMethods:
type:
- array
- 'null'
items:
type: string
requestError:
type:
- string
- 'null'
timingPhases:
allOf:
- $ref: '#/components/schemas/CheckResultFreeformObject'
- {}
description: The detailed gRPC response artifact.
description: Failure-debug diagnostics for a gRPC check.
CheckResultFreeformObject:
type: object
properties: {}
additionalProperties: {}
AgenticSuggestion:
type: object
properties:
summary:
type: string
description: Human-readable summary of the agent's suggestion.
prompt:
type: string
description: Prompt fragment the user can append to extend the check.
promptReplacement:
type: string
description: Full replacement prompt the user can apply when the suggestion is a correction.
secrets:
type: array
items:
type: string
description: Environment variable names the suggestion would require.
category:
type: string
enum:
- credentials
- endpoint
- configuration
description: Category of the suggestion.
CheckResultList:
type: array
items:
$ref: '#/components/schemas/CheckResult'
CheckResultAPI:
type:
- object
- 'null'
properties:
assertions:
type:
- array
- 'null'
items:
$ref: '#/components/schemas/CheckResultFreeformObject'
default: []
description: List of API check assertions.
request:
type: object
properties:
method:
type: string
url:
type: string
data:
type: string
headers:
$ref: '#/components/schemas/CheckResultFreeformObject'
params:
$ref: '#/components/schemas/CheckResultFreeformObject'
description: The request for the API.
response:
type: object
properties:
status:
type: number
statusText:
type: string
body:
type: string
bodyEncoding:
type: string
enum:
- base64
description: Encoding of `body`. Set to `base64` when the body holds base64-encoded raw bytes (raster image responses); abs
# --- truncated at 32 KB (46 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/checkly/refs/heads/main/openapi/checkly-check-results-api-openapi.yml