# Retrieve a check (v3) - Checkly Docs

> Show details of a specific API or browser check. This /v3 read returns check intent as a constraints array with typed REQUIRED_OUTCOME and MUST_PRESERVE entries. /v1 and /v2 keep the legacy requiredOutcomes and mustPreserve arrays. Like /v2, /v3 does not return the flat project, logicalId, member and pending fields; use projectBindings for the complete project ownership state. Creating, updating and deleting checks remain on /v1.

Source: https://www.checklyhq.com/docs/api-reference/checks/retrieve-a-check-v3/

---

Retrieve a check

```
curl --request GET \
--url https://api.checklyhq.com/v3/checks/{id} \
--header 'Authorization: Bearer '
```

```
import requests

url = "https://api.checklyhq.com/v3/checks/{id}"

headers = {"Authorization": "Bearer "}

response = requests.get(url, headers=headers)

print(response.text)
```

```
const options = {method: 'GET', headers: {Authorization: 'Bearer '}};

fetch('https://api.checklyhq.com/v3/checks/{id}', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));
```

```
"https://api.checklyhq.com/v3/checks/{id}",
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 "
],
]);

$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.checklyhq.com/v3/checks/{id}"

req, _ := http.NewRequest("GET", url, nil)

req.Header.Add("Authorization", "Bearer ")

res, _ := http.DefaultClient.Do(req)

defer res.Body.Close()
body, _ := io.ReadAll(res.Body)

fmt.Println(string(body))

}
```

```
HttpResponse response = Unirest.get("https://api.checklyhq.com/v3/checks/{id}")
.header("Authorization", "Bearer ")
.asString();
```

```
require 'uri'
require 'net/http'

url = URI("https://api.checklyhq.com/v3/checks/{id}")

http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true

request = Net::HTTP::Get.new(url)
request["Authorization"] = 'Bearer '

response = http.request(request)
puts response.read_body
```

```
{
"name": " ",
"activated": true,
"muted": false,
"locations": [],
"tags": [],
"alertSettings": {
"escalationType": "RUN_BASED",
"runBasedEscalation": {
"failedRunThreshold": 1
},
"reminders": {
"amount": 0,
"interval": 5
},
"parallelRunFailureThreshold": {
"enabled": false,
"percentage": 10
}
},
"useGlobalAlertSettings": true,
"groupId": null,
"groupOrder": null,
"alertChannelSubscriptions": [
{
"alertChannelId": 123,
"activated": true
}
],
"triggerIncident": {
"serviceId": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"severity": "CRITICAL",
"name": " ",
"description": " ",
"notifySubscribers": true
},
"runParallel": false,
"description": null,
"intent": null,
"aiAutoRepairEnabled": null,
"id": " ",
"created_at": "2023-11-07T05:31:56Z",
"updated_at": "2023-11-07T05:31:56Z",
"alertChannels": {
"email": [
{
"address": ""
}
],
"webhook": [
{
"name": "",
"url": "",
"method": "POST",
"headers": [],
"queryParameters": []
}
],
"slack": [
{
"url": ""
}
],
"sms": [
{
"name": " ",
"number": ""
}
]
},
"projectBindings": {
"owner": {
"project": {
"id": " ",
"logicalId": " ",
"name": " "
},
"binding": {
"logicalId": "homepage-check",
"pending": true,
"sourceFile": "src/__checks__/homepage.check.ts"
}
},
"references": [
{
"project": {
"id": " ",
"logicalId": " ",
"name": " "
},
"binding": {
"logicalId": "homepage-check",
"pending": true,
"sourceFile": "src/__checks__/homepage.check.ts"
}
}
]
},
"privateLocations": [
" "
],
"checkType": "HEARTBEAT",
"heartbeat": {
"period": 123,
"periodUnit": "seconds",
"grace": 123,
"graceUnit": "seconds",
"pingToken": " ",
"pingUrl": " "
}
}
```

```
{
"statusCode": 123,
"error": " ",
"message": " "
}
```

```
{
"statusCode": 123,
"error": " ",
"message": " "
}
```

```
{
"statusCode": 123,
"error": " ",
"message": " "
}
```

```
{
"statusCode": 123,
"error": " ",
"message": " "
}
```

```
{
"statusCode": 123,
"error": " ",
"message": " "
}
```

Checks and Monitors

# Retrieve a check (v3)

Show details of a specific API or browser check.

This `/v3` read returns check intent as a `constraints` array with typed `REQUIRED_OUTCOME` and `MUST_PRESERVE` entries. `/v1` and `/v2` keep the legacy `requiredOutcomes` and `mustPreserve` arrays. Like `/v2`, `/v3` does not return the flat `project`, `logicalId`, `member` and `pending` fields; use `projectBindings` for the complete project ownership state. Creating, updating and deleting checks remain on `/v1`.

GET

/

v3

/

checks

/

{id}

Retrieve a check

```
curl --request GET \
--url https://api.checklyhq.com/v3/checks/{id} \
--header 'Authorization: Bearer '
```

```
import requests

url = "https://api.checklyhq.com/v3/checks/{id}"

headers = {"Authorization": "Bearer "}

response = requests.get(url, headers=headers)

print(response.text)
```

```
const options = {method: 'GET', headers: {Authorization: 'Bearer '}};

fetch('https://api.checklyhq.com/v3/checks/{id}', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));
```

```
"https://api.checklyhq.com/v3/checks/{id}",
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 "
],
]);

$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.checklyhq.com/v3/checks/{id}"

req, _ := http.NewRequest("GET", url, nil)

req.Header.Add("Authorization", "Bearer ")

res, _ := http.DefaultClient.Do(req)

defer res.Body.Close()
body, _ := io.ReadAll(res.Body)

fmt.Println(string(body))

}
```

```
HttpResponse response = Unirest.get("https://api.checklyhq.com/v3/checks/{id}")
.header("Authorization", "Bearer ")
.asString();
```

```
require 'uri'
require 'net/http'

url = URI("https://api.checklyhq.com/v3/checks/{id}")

http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true

request = Net::HTTP::Get.new(url)
request["Authorization"] = 'Bearer '

response = http.request(request)
puts response.read_body
```

```
{
"name": " ",
"activated": true,
"muted": false,
"locations": [],
"tags": [],
"alertSettings": {
"escalationType": "RUN_BASED",
"runBasedEscalation": {
"failedRunThreshold": 1
},
"reminders": {
"amount": 0,
"interval": 5
},
"parallelRunFailureThreshold": {
"enabled": false,
"percentage": 10
}
},
"useGlobalAlertSettings": true,
"groupId": null,
"groupOrder": null,
"alertChannelSubscriptions": [
{
"alertChannelId": 123,
"activated": true
}
],
"triggerIncident": {
"serviceId": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"severity": "CRITICAL",
"name": " ",
"description": " ",
"notifySubscribers": true
},
"runParallel": false,
"description": null,
"intent": null,
"aiAutoRepairEnabled": null,
"id": " ",
"created_at": "2023-11-07T05:31:56Z",
"updated_at": "2023-11-07T05:31:56Z",
"alertChannels": {
"email": [
{
"address": ""
}
],
"webhook": [
{
"name": "",
"url": "",
"method": "POST",
"headers": [],
"queryParameters": []
}
],
"slack": [
{
"url": ""
}
],
"sms": [
{
"name": " ",
"number": ""
}
]
},
"projectBindings": {
"owner": {
"project": {
"id": " ",
"logicalId": " ",
"name": " "
},
"binding": {
"logicalId": "homepage-check",
"pending": true,
"sourceFile": "src/__checks__/homepage.check.ts"
}
},
"references": [
{
"project": {
"id": " ",
"logicalId": " ",
"name": " "
},
"binding": {
"logicalId": "homepage-check",
"pending": true,
"sourceFile": "src/__checks__/homepage.check.ts"
}
}
]
},
"privateLocations": [
" "
],
"checkType": "HEARTBEAT",
"heartbeat": {
"period": 123,
"periodUnit": "seconds",
"grace": 123,
"graceUnit": "seconds",
"pingToken": " ",
"pingUrl": " "
}
}
```

```
{
"statusCode": 123,
"error": " ",
"message": " "
}
```

```
{
"statusCode": 123,
"error": " ",
"message": " "
}
```

```
{
"statusCode": 123,
"error": " ",
"message": " "
}
```

```
{
"statusCode": 123,
"error": " ",
"message": " "
}
```

```
{
"statusCode": 123,
"error": " ",
"message": " "
}
```

#### Authorizations

​

Authorization

string

header

required

The Checkly Public API uses API keys to authenticate requests. You can get the API Key [here](https://app.checklyhq.com/settings/user/api-keys).
Your API key is like a password:
keep it secure!

Authentication to the API is performed using the Bearer auth method in the Authorization header and using the account ID.

For example, set Authorization header while using cURL: `curl -H "Authorization: Bearer [apiKey]" "X-Checkly-Account: [accountId]"`

#### Headers

​

x-checkly-account

string<uuid>

Your Checkly account ID, you can find it at [https://app.checklyhq.com/settings/account/general](https://app.checklyhq.com/settings/account/general)

#### Path Parameters

​

id

string<uuid>

required

Minimum string length: `1`

#### Query Parameters

​

includeDependencies

boolean

Include check dependencies in the response

​

applyGroupSettings

boolean

default: false

Checks that belong to a group are returned with group settings applied.

#### Response

Successful

- Option 1
- Option 2
- Option 3
- Option 4
- Option 5
- Option 6
- Option 7
- Option 8
- Option 9
- Option 10
- Option 11
- Option 12
- Option 13

​

name

string

required

Minimum string length: `1`

​

activated

boolean

default: true

​

muted

boolean

default: false

​

locations

enum<string>[] | null

Available options: `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`

​

tags

string[]

Minimum string length: `1`

​

alertSettings

object | null

Show child attributes

​

useGlobalAlertSettings

boolean

default: true

​

groupId

number | null

​

groupOrder

number | null

Required range: `x >= 0`

​

alertChannelSubscriptions

object[]

Show child attributes

​

triggerIncident

object | null

Show child attributes

​

runParallel

boolean

default: false

​

description

string | null

Maximum string length: `500`

​

intent

object | null

Show child attributes

​

aiAutoRepairEnabled

boolean | null

​

id

string

​

created_at

string<date-time>

​

updated_at

string<date-time> | null

​

alertChannels

object | null

Show child attributes

​

projectBindings

object

The Checkly CLI projects that manage this resource. `owner` is null and `references` empty when the resource is not managed by code.

Show child attributes

​

privateLocations

string[] | null

Minimum string length: `1`

​

checkType

enum<string>

Available options: `HEARTBEAT`

​

heartbeat

object

Show child attributes

Was this page helpful?

[Suggest edits](https://github.com/checkly/docs/edit/main/api-reference/checks/retrieve-a-check-v3.mdx)[Raise issue](https://github.com/checkly/docs/issues/new?title=Issue%20on%20docs&body=Path:%20/api-reference/checks/retrieve-a-check-v3)

[Retrieve a check Previous](https://www.checklyhq.com/docs/api-reference/checks/retrieve-a-check)[Retrieve a check (v2) Next](https://www.checklyhq.com/docs/api-reference/checks/retrieve-a-check-v2)

[x](https://x.com/checklyhq)[github](https://github.com/checkly)[linkedin](https://linkedin.com/company/checkly)

[Powered by This documentation is built and hosted on Mintlify, a developer documentation platform](https://www.mintlify.com/?utm_campaign=poweredBy&utm_medium=referral&utm_source=checkly-422f444a)
