---
id: supplementary-sources-access-notes
title: Supplementary sources — access notes
description: Credential gates, sources to skip, and practical alternatives for boards without a native JobOps extractor.
sidebar_position: 15
---

This page captures **verified access paths** and realistic integration effort for boards that are not fully wired as pipeline extractors. Pair it with [Extractors overview](/docs/next/extractors/overview), [Manual Import](/docs/next/extractors/manual), and [Add an Extractor](/docs/next/workflows/add-an-extractor).

## Credential-gated APIs (usually straightforward)

### Careerjet (v4)

- **Sign-up:** [careerjet.com/partners](https://www.careerjet.com/partners) → add your site → Access API → register **server egress IP(s)**.
- **Endpoint:** `https://search.api.careerjet.net/v4/query`
- **Important parameters:** `affid` (publisher key), **`user_ip`** (documented as end-user IP; for headless/server runs use an IP you allowlisted — fraud-checked), **`user_agent`**, **`url`** (referrer URL where results would appear — maps to `CAREERJET_REFERER` / query `url` + `Referer` header). Missing `user_ip` or `user_agent` tends to yield **403**.
- **Tip:** Official Python client: [`careerjet/careerjet-api-client-python`](https://github.com/careerjet/careerjet-api-client-python).

### Reed

- **Sign-up:** [reed.co.uk/developers](https://www.reed.co.uk/developers) — API key is issued via their contact flow (often ~1–2 business days).
- **Endpoint:** e.g. `https://www.reed.co.uk/api/1.0/search?keywords=...&locationName=...&resultsToTake=100`
- **Auth:** HTTP Basic — username = API key, password empty (`curl -u "YOUR_API_KEY:" ...`).
- **Pagination:** `resultsToTake` max **100** per request; advance with `resultsToSkip`.
- **Scope:** UK-centric; still useful for remote UK employers.

## Usually not worth scraping yourself

### Job Bank (Canada)

XML syndication is **manual approval**: active Canadian Business Number, established Canadian-facing employment site. No simple public JSON/RSS for arbitrary candidates. HTML exists but is heavy JSF / anti-bot — treat as **skip** unless you qualify for the feed.

### Jobboom / Workopolis / BCJobs

No stable public API/RSS documented for generic job discovery. Third-party scrapers often need **residential proxies** and paid runtime — **skip or pay** for a maintained provider.

### Jobillico

Employer-oriented XML/OAuth API (posting and limited pull). Needs a **business account** — not a candidate discovery API.

### MyVisaJobs / H1BGrader

No practical public API for their enriched UX. Alternatives: **DOL OFLC LCA disclosure** quarterly CSVs (public, bulk), then join to your own job corpus; paid marketplace scrapers if you accept cost/compliance tradeoffs. Browser extensions may still be useful **personally**.

### Untapped (Jopwell)

Closed candidate platform — **no public job-posting API** for arbitrary ingestion.

## Practical additions in JobOps

### iCIMS (per-tenant HTML)

Many tenants expose anonymous search HTML suitable for stable scraping patterns, e.g.:

`https://{tenant}.icims.com/jobs/search?ss=1&searchKeyword=…&in_iframe=1`

Pagination often uses `pr=`; job URLs commonly follow `/jobs/{id}/{slug}/job`. Maintain a **tenant host list** (similar to Greenhouse/Lever company lists). This is **not** the authenticated iCIMS Job Portal API.

Shipped extractor: **iCIMS tenants (HTML)** — configure `icimsTenants` (+ caps in Settings).

### BC T-Net RSS

Free aggregate RSS (example): `https://www.bctechnology.com/rss/jobs/tnetjobs.xml` — useful for **BC / Vancouver** tech roles; custom slices via the site’s RSS builder.

Shipped extractor: **BC T-Net (RSS)** — Canada geography only; optional `bctenetRssUrls` overrides default feed.

## Related pages

- [Extractors overview](/docs/next/extractors/overview)
- [Eluta](/docs/next/extractors/eluta) (Canada RSS)
- [SmartRecruiters](/docs/next/extractors/smartrecruiters)
- [Canadian companies — QA-strong ATS](/docs/next/extractors/canadian-companies-qa-ats)
- [Manual Import](/docs/next/extractors/manual)
