Job Monkey

Start here

Five minutes, three steps, nothing to install beyond curl.

1. Get a free key

Sign up with your email. Click the link in the mail, set a password, and your first key is on the screen, once. Copy it somewhere safe: we keep only its first twelve characters.

The free plan has no end date: 250 full jobs and 25 full-feed calls a month, 10 calls a day on the free routes (events, updates, companies, counts). No card.

2. Count before you load

curl -s 'https://api.jobmonkey.ai/v1/jobs/count?country=Canada' \
  -H 'Authorization: Bearer cb_live_XXXXXXXX'
{"jobs": 81137, "held": 1904, "companies": 2874, "as_of": "2026-11-07T19:35:59Z"}

Counts are free. held are closures we are still checking (see Held closures); jobs includes them.

3. Read your first page

curl -s 'https://api.jobmonkey.ai/v1/jobs?country=Canada&limit=2' \
  -H 'Authorization: Bearer cb_live_XXXXXXXX'

The answer holds two full jobs, next (the cursor for the next page), more, ledger_seq and charged: 2. Two of your 250 free jobs are used. Every field of a job is in Fields.

The same in Python, standard library only:

import json, urllib.request

KEY = "cb_live_XXXXXXXX"
req = urllib.request.Request("https://api.jobmonkey.ai/v1/jobs?country=Canada&limit=2",
                             headers={"Authorization": f"Bearer {KEY}"})
with urllib.request.urlopen(req) as r:
    page = json.load(r)
for job in page["jobs"]:
    print(job["job_guid"], job["title"], job["company"])
print("next:", page["next"], "ledger_seq:", page["ledger_seq"])

What is next

Every answer carries X-Request-Id; quote it when you write to [email protected].