health
GET /v1/health
200 when every database answers
200 when every database answers, 503 otherwise. No key. The status page reads the same heartbeat.
Charged: nothing; no key.
Parameters
None. An unknown parameter is a 400 bad_request.
Answer
{
"ok": true,
"databases": {
"harvest": {
"ok": true,
"ms": 4.1,
"value": 9648658
},
"store": {
"ok": true,
"ms": 2.0,
"value": 1
},
"api": {
"ok": true,
"ms": 1.3,
"value": 3
}
},
"ledger_seq": 9648658,
"model_loaded": true
}
Example
curl -s https://api.jobmonkey.ai/v1/health
{
"ok": true,
"databases": {
"harvest": {
"ok": true,
"ms": 4.1,
"value": 9648658
},
"store": {
"ok": true,
"ms": 2.0,
"value": 1
},
"api": {
"ok": true,
"ms": 1.3,
"value": 3
}
},
"ledger_seq": 9648658,
"model_loaded": true
}
In Python
import json, urllib.request
req = urllib.request.Request("https://api.jobmonkey.ai/v1/health")
with urllib.request.urlopen(req) as r:
answer = json.load(r)
print(r.headers.get("X-Request-Id"), r.headers.get("X-Units-Charged"))
print(json.dumps(answer, indent=1)[:800])
Errors
- 503 when a database does not answer
Headers
X-Request-IdX-Units-ChargedRateLimit (limit=10, remaining=n, reset=s)RateLimit-Policy (10;w=1, plus 10;w=86400 on a free key calling a free route)X-Plan-Jobs-Remaining (the full feed and snapshots, when the plan has a cap)X-Account: past_due (while an invoice is unpaid)
Every answer carries X-Request-Id; quote it to [email protected]. Times are UTC, ISO 8601.