curl --request GET \
--url https://mcp.arlohealth.ai/api/care-jobs/{id} \
--header 'Authorization: Bearer <token>'import requests
url = "https://mcp.arlohealth.ai/api/care-jobs/{id}"
headers = {"Authorization": "Bearer <token>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {Authorization: 'Bearer <token>'}};
fetch('https://mcp.arlohealth.ai/api/care-jobs/{id}', 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://mcp.arlohealth.ai/api/care-jobs/{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 <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://mcp.arlohealth.ai/api/care-jobs/{id}"
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://mcp.arlohealth.ai/api/care-jobs/{id}")
.header("Authorization", "Bearer <token>")
.asString();require 'uri'
require 'net/http'
url = URI("https://mcp.arlohealth.ai/api/care-jobs/{id}")
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{
"jobId": "<string>",
"jobType": "<string>",
"tier": "<string>",
"status": "pending",
"openItems": [
{
"askId": "<string>",
"itemId": "<string>",
"kind": "choice",
"question": "<string>",
"why": "<string>",
"required": true,
"options": [
{
"id": "<string>",
"label": "<string>",
"detail": "<string>"
}
],
"parts": [
{
"name": "<string>",
"label": "<string>"
}
],
"expiresLabel": "<string>",
"onExpiry": "<string>"
}
],
"needs": 123,
"answerBy": "<string>",
"portalUrl": "<string>",
"asks": [
{}
],
"stillWaiting": true,
"sheet": {
"title": "<string>",
"subtitle": "<string>"
},
"approvalUrl": "<string>",
"approvedViaLabel": "<string>",
"grantId": "<string>",
"expiresAt": 123,
"audit": [
{
"actor": "<string>",
"label": "<string>",
"meta": {},
"at": 123
}
]
}{
"error": "<string>",
"reason": "<string>",
"message": "<string>",
"field": "<string>",
"code": "<string>"
}{
"error": "<string>",
"needsAuth": true
}Get Care Job
Status plus the patient-visible audit trail. status moves from
pending to approved, declined, or expired, then from approved to
executed or failed once Arlo’s care team completes the action. While
the care team waits on the user it reads needs_input and carries
openItems (answer with POST /api/care-jobs//answers). While
pending the response carries the approvalUrl for the user.
curl --request GET \
--url https://mcp.arlohealth.ai/api/care-jobs/{id} \
--header 'Authorization: Bearer <token>'import requests
url = "https://mcp.arlohealth.ai/api/care-jobs/{id}"
headers = {"Authorization": "Bearer <token>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {Authorization: 'Bearer <token>'}};
fetch('https://mcp.arlohealth.ai/api/care-jobs/{id}', 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://mcp.arlohealth.ai/api/care-jobs/{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 <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://mcp.arlohealth.ai/api/care-jobs/{id}"
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://mcp.arlohealth.ai/api/care-jobs/{id}")
.header("Authorization", "Bearer <token>")
.asString();require 'uri'
require 'net/http'
url = URI("https://mcp.arlohealth.ai/api/care-jobs/{id}")
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{
"jobId": "<string>",
"jobType": "<string>",
"tier": "<string>",
"status": "pending",
"openItems": [
{
"askId": "<string>",
"itemId": "<string>",
"kind": "choice",
"question": "<string>",
"why": "<string>",
"required": true,
"options": [
{
"id": "<string>",
"label": "<string>",
"detail": "<string>"
}
],
"parts": [
{
"name": "<string>",
"label": "<string>"
}
],
"expiresLabel": "<string>",
"onExpiry": "<string>"
}
],
"needs": 123,
"answerBy": "<string>",
"portalUrl": "<string>",
"asks": [
{}
],
"stillWaiting": true,
"sheet": {
"title": "<string>",
"subtitle": "<string>"
},
"approvalUrl": "<string>",
"approvedViaLabel": "<string>",
"grantId": "<string>",
"expiresAt": 123,
"audit": [
{
"actor": "<string>",
"label": "<string>",
"meta": {},
"at": 123
}
]
}{
"error": "<string>",
"reason": "<string>",
"message": "<string>",
"field": "<string>",
"code": "<string>"
}{
"error": "<string>",
"needsAuth": true
}Authorizations
OAuth 2.1 with PKCE
Path Parameters
The jobId returned when the job was created
Response
Care job status and audit trail
pending, approved, needs_input, declined, expired, executed, failed Present when the care team is waiting on the user; every unanswered question across open asks
Show child attributes
Show child attributes
Required items still open
The nearest deadline, as a phrase
The job's page on the user's Arlo portal, where they can answer (and upload documents)
Ask history with what was answered
Only on /wait
Show child attributes
Show child attributes
Present only while pending
How the user verified, once approved
The single-use grant the care team executes under, once approved
The patient-visible audit trail, who did what and when
Show child attributes
Show child attributes
Was this page helpful?