snapshots (paid per file)
GET /v1/snapshots
The newest weekly snapshot: its files, their jobs, bytes and sha256
The newest weekly snapshot: its stamp, when it was taken, the ledger seq to read events from, and per file (everything and each country) the jobs, bytes and sha256. The files are zstd JSON lines in the API's exact shape; a country file is concatenated frames, one stream (plain zstd -d reads it).
Charged: nothing for the list.
Parameters
None. An unknown parameter is a 400 bad_request.
Answer
{
"snapshot": {
"stamp": "20261107-191824Z",
"taken_at": "<time>",
"seq": 9648658,
"jobs": 2881612,
"held": 123200,
"companies": 76543,
"countries": 248
},
"job_fields": [
"..."
],
"company_fields": [
"..."
],
"link_hours": 24,
"where": "r2",
"files": [
{
"file": "canada",
"country": "Canada",
"jobs": 81137,
"bytes": 190000000,
"sha256": "...",
"companies": 2874,
"companies_bytes": 900000,
"companies_sha256": "..."
}
]
}
Example
curl -s https://api.jobmonkey.ai/v1/snapshots -H 'Authorization: Bearer cb_live_XXXXXXXX'
{
"snapshot": {
"stamp": "20261107-191824Z",
"taken_at": "2026-11-07T19:18:24Z",
"seq": 9648658,
"jobs": 2881612,
"held": 123200,
"companies": 76543,
"countries": 248
},
"job_fields": [
"job_guid",
"company_guid",
"title",
"..."
],
"company_fields": [
"company_guid",
"name",
"..."
],
"link_hours": 24,
"where": "r2",
"files": [
{
"file": "everything",
"country": null,
"jobs": 2881612,
"bytes": 6681270720,
"sha256": "...",
"companies": 76543,
"companies_bytes": 24000000,
"companies_sha256": "..."
},
{
"file": "canada",
"country": "Canada",
"jobs": 81137,
"bytes": 190000000,
"sha256": "...",
"companies": 2874,
"companies_bytes": 900000,
"companies_sha256": "..."
}
]
}
In Python
import json, urllib.request
KEY = "cb_live_XXXXXXXX"
req = urllib.request.Request("https://api.jobmonkey.ai/v1/snapshots", headers={"Authorization": f"Bearer {KEY}"})
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
- 401 no_key / bad_key / account_off
- 429 rate_limited
- 429 plan_exhausted (free key, 10 a day)
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.