curl --request POST \
--url https://api.getoneprofile.ai/integration/health-checks/summary/ \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '
{
"since": "2023-11-07T05:31:56Z",
"exclude_ids": [
"3c90c3cc-0d44-4b50-8888-8dd25736052a"
],
"filters": {
"integration_type__not": [
"<string>"
],
"record_type__in": [
"<string>"
],
"search": "<string>"
},
"ids": [
"3c90c3cc-0d44-4b50-8888-8dd25736052a"
]
}
'import requests
url = "https://api.getoneprofile.ai/integration/health-checks/summary/"
payload = {
"since": "2023-11-07T05:31:56Z",
"exclude_ids": ["3c90c3cc-0d44-4b50-8888-8dd25736052a"],
"filters": {
"integration_type__not": ["<string>"],
"record_type__in": ["<string>"],
"search": "<string>"
},
"ids": ["3c90c3cc-0d44-4b50-8888-8dd25736052a"]
}
headers = {
"Authorization": "Bearer <token>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {Authorization: 'Bearer <token>', 'Content-Type': 'application/json'},
body: JSON.stringify({
since: '2023-11-07T05:31:56Z',
exclude_ids: ['3c90c3cc-0d44-4b50-8888-8dd25736052a'],
filters: {
integration_type__not: ['<string>'],
record_type__in: ['<string>'],
search: '<string>'
},
ids: ['3c90c3cc-0d44-4b50-8888-8dd25736052a']
})
};
fetch('https://api.getoneprofile.ai/integration/health-checks/summary/', 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.getoneprofile.ai/integration/health-checks/summary/",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_POSTFIELDS => json_encode([
'since' => '2023-11-07T05:31:56Z',
'exclude_ids' => [
'3c90c3cc-0d44-4b50-8888-8dd25736052a'
],
'filters' => [
'integration_type__not' => [
'<string>'
],
'record_type__in' => [
'<string>'
],
'search' => '<string>'
],
'ids' => [
'3c90c3cc-0d44-4b50-8888-8dd25736052a'
]
]),
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.getoneprofile.ai/integration/health-checks/summary/"
payload := strings.NewReader("{\n \"since\": \"2023-11-07T05:31:56Z\",\n \"exclude_ids\": [\n \"3c90c3cc-0d44-4b50-8888-8dd25736052a\"\n ],\n \"filters\": {\n \"integration_type__not\": [\n \"<string>\"\n ],\n \"record_type__in\": [\n \"<string>\"\n ],\n \"search\": \"<string>\"\n },\n \"ids\": [\n \"3c90c3cc-0d44-4b50-8888-8dd25736052a\"\n ]\n}")
req, _ := http.NewRequest("POST", 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.post("https://api.getoneprofile.ai/integration/health-checks/summary/")
.header("Authorization", "Bearer <token>")
.header("Content-Type", "application/json")
.body("{\n \"since\": \"2023-11-07T05:31:56Z\",\n \"exclude_ids\": [\n \"3c90c3cc-0d44-4b50-8888-8dd25736052a\"\n ],\n \"filters\": {\n \"integration_type__not\": [\n \"<string>\"\n ],\n \"record_type__in\": [\n \"<string>\"\n ],\n \"search\": \"<string>\"\n },\n \"ids\": [\n \"3c90c3cc-0d44-4b50-8888-8dd25736052a\"\n ]\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.getoneprofile.ai/integration/health-checks/summary/")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["Authorization"] = 'Bearer <token>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"since\": \"2023-11-07T05:31:56Z\",\n \"exclude_ids\": [\n \"3c90c3cc-0d44-4b50-8888-8dd25736052a\"\n ],\n \"filters\": {\n \"integration_type__not\": [\n \"<string>\"\n ],\n \"record_type__in\": [\n \"<string>\"\n ],\n \"search\": \"<string>\"\n },\n \"ids\": [\n \"3c90c3cc-0d44-4b50-8888-8dd25736052a\"\n ]\n}"
response = http.request(request)
puts response.read_body{
"checked": 123,
"error": 123,
"failures": [
{
"integration_id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"name": "<string>",
"error_message": "<string>"
}
],
"healthy": 123,
"total": 123,
"warning": 123
}{
"detail": "<string>"
}{
"detail": "<string>"
}{
"detail": "<string>",
"issues": [
{
"input": "<string>",
"loc": [
"<string>"
],
"msg": "<string>",
"type": "<string>"
}
]
}{
"detail": "<string>"
}{
"detail": "<string>"
}{
"detail": "<string>"
}Bulk health check progress and summary
Return live progress and a consolidated, status-grouped summary for a bulk health check run over the same selection that was triggered. An integration counts as checked once its latest health check is newer than the provided run start time. Poll this until checked == total, then render the grouped summary and links to the failures.
curl --request POST \
--url https://api.getoneprofile.ai/integration/health-checks/summary/ \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '
{
"since": "2023-11-07T05:31:56Z",
"exclude_ids": [
"3c90c3cc-0d44-4b50-8888-8dd25736052a"
],
"filters": {
"integration_type__not": [
"<string>"
],
"record_type__in": [
"<string>"
],
"search": "<string>"
},
"ids": [
"3c90c3cc-0d44-4b50-8888-8dd25736052a"
]
}
'import requests
url = "https://api.getoneprofile.ai/integration/health-checks/summary/"
payload = {
"since": "2023-11-07T05:31:56Z",
"exclude_ids": ["3c90c3cc-0d44-4b50-8888-8dd25736052a"],
"filters": {
"integration_type__not": ["<string>"],
"record_type__in": ["<string>"],
"search": "<string>"
},
"ids": ["3c90c3cc-0d44-4b50-8888-8dd25736052a"]
}
headers = {
"Authorization": "Bearer <token>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {Authorization: 'Bearer <token>', 'Content-Type': 'application/json'},
body: JSON.stringify({
since: '2023-11-07T05:31:56Z',
exclude_ids: ['3c90c3cc-0d44-4b50-8888-8dd25736052a'],
filters: {
integration_type__not: ['<string>'],
record_type__in: ['<string>'],
search: '<string>'
},
ids: ['3c90c3cc-0d44-4b50-8888-8dd25736052a']
})
};
fetch('https://api.getoneprofile.ai/integration/health-checks/summary/', 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.getoneprofile.ai/integration/health-checks/summary/",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_POSTFIELDS => json_encode([
'since' => '2023-11-07T05:31:56Z',
'exclude_ids' => [
'3c90c3cc-0d44-4b50-8888-8dd25736052a'
],
'filters' => [
'integration_type__not' => [
'<string>'
],
'record_type__in' => [
'<string>'
],
'search' => '<string>'
],
'ids' => [
'3c90c3cc-0d44-4b50-8888-8dd25736052a'
]
]),
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.getoneprofile.ai/integration/health-checks/summary/"
payload := strings.NewReader("{\n \"since\": \"2023-11-07T05:31:56Z\",\n \"exclude_ids\": [\n \"3c90c3cc-0d44-4b50-8888-8dd25736052a\"\n ],\n \"filters\": {\n \"integration_type__not\": [\n \"<string>\"\n ],\n \"record_type__in\": [\n \"<string>\"\n ],\n \"search\": \"<string>\"\n },\n \"ids\": [\n \"3c90c3cc-0d44-4b50-8888-8dd25736052a\"\n ]\n}")
req, _ := http.NewRequest("POST", 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.post("https://api.getoneprofile.ai/integration/health-checks/summary/")
.header("Authorization", "Bearer <token>")
.header("Content-Type", "application/json")
.body("{\n \"since\": \"2023-11-07T05:31:56Z\",\n \"exclude_ids\": [\n \"3c90c3cc-0d44-4b50-8888-8dd25736052a\"\n ],\n \"filters\": {\n \"integration_type__not\": [\n \"<string>\"\n ],\n \"record_type__in\": [\n \"<string>\"\n ],\n \"search\": \"<string>\"\n },\n \"ids\": [\n \"3c90c3cc-0d44-4b50-8888-8dd25736052a\"\n ]\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.getoneprofile.ai/integration/health-checks/summary/")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["Authorization"] = 'Bearer <token>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"since\": \"2023-11-07T05:31:56Z\",\n \"exclude_ids\": [\n \"3c90c3cc-0d44-4b50-8888-8dd25736052a\"\n ],\n \"filters\": {\n \"integration_type__not\": [\n \"<string>\"\n ],\n \"record_type__in\": [\n \"<string>\"\n ],\n \"search\": \"<string>\"\n },\n \"ids\": [\n \"3c90c3cc-0d44-4b50-8888-8dd25736052a\"\n ]\n}"
response = http.request(request)
puts response.read_body{
"checked": 123,
"error": 123,
"failures": [
{
"integration_id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"name": "<string>",
"error_message": "<string>"
}
],
"healthy": 123,
"total": 123,
"warning": 123
}{
"detail": "<string>"
}{
"detail": "<string>"
}{
"detail": "<string>",
"issues": [
{
"input": "<string>",
"loc": [
"<string>"
],
"msg": "<string>",
"type": "<string>"
}
]
}{
"detail": "<string>"
}{
"detail": "<string>"
}{
"detail": "<string>"
}Authorizations
Bearer authentication header of the form Bearer <token>, where <token> is your auth token.
Body
Selection plus the run start time, for polling bulk health check progress.
Run start time. An integration counts as checked when its latest health check's checked_at is after this timestamp.
Integration IDs to exclude from a filter-based (select-all) selection.
10000Select-all: check every integration matching these filters (all pages).
Show child attributes
Show child attributes
Explicit integration IDs to check (per-page selection).
1 - 10000 elementsResponse
Successful Response
Consolidated progress + result summary for a bulk health check run.
How many have a completed check since the run started.
Count checked with an error since the run started.
The error integrations (bounded), for quick links to the failures.
Show child attributes
Show child attributes
Count checked healthy since the run started.
Total integrations in the selection.
Count checked with a warning since the run started.
Was this page helpful?