ilia 7b3dfb002a
Some checks failed
CI / Linting (Biome) (push) Failing after 36s
CI / Tests (push) Successful in 5m54s
CI / Type Check (adzuna-extractor) (push) Successful in 1m6s
CI / Type Check (gradcracker-extractor) (push) Successful in 1m9s
CI / Type Check (hiringcafe-extractor) (push) Successful in 1m5s
CI / Type Check (orchestrator) (push) Successful in 1m21s
CI / Type Check (startupjobs-extractor) (push) Successful in 1m4s
CI / Type Check (ukvisajobs-extractor) (push) Successful in 1m4s
CI / Documentation (push) Successful in 1m52s
feat(extractors): add 17 job source extractors and cross-source dedup
Adds extractor packages: arbeitnow, ashby, careerjet, fourdayweek,
greenhouse, himalayas, jobicy, jooble, lever, reed, remoteok, remotive,
themuse, usajobs, weworkremotely, workday — each with manifest, package
metadata and README.

Pipeline / shared:
- shared/job-fingerprint: stable hash for cross-source dedup, with tests
- discover-jobs: dedup via fingerprint and richer per-source merging
- jobs repository: fingerprint-aware upsert / lookup
- settings-registry, settings types/routes, demo-defaults: knobs for the
  new sources
- shared extractors index: register the new manifests
- location-support, profiles route: small fixes for the new sources

Tooling:
- scripts/smoke-extractors.ts to sanity-check each source locally
- scripts/jobber-cron-{cherepaha,dobkin}.env.example: per-host cron
  templates (CHANGEME placeholders only)
- .env.example: documented env vars for the new extractors
- .gitignore: ignore extractors/*/storage/ runtime caches (was ukvisajobs only)

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-05-12 20:17:52 -04:00

1.2 KiB

usajobs-extractor

US-government job listings via the public USAJOBS Search API (GET /api/Search on data.usajobs.gov).

Getting API access

  1. Open the USAJOBS Developer Site and complete USAJOBS API Access Request (sign in / register as required).
  2. After approval, USAJOBS emails your API key to the address you used—use that value for USAJOBS_API_KEY.
  3. Set USAJOBS_USER_AGENT to a real contact email (same one you used for registration is typical). This is required by their terms, not optional branding—the HTTP User-Agent header must identify you.

Reference material on the developer site includes API Reference, tutorials, and code lists (locations, pay plans, etc.).

Configuration

Env / setting Required Notes
USAJOBS_API_KEY / usajobsApiKey yes From the email USAJOBS sends after API access is granted
USAJOBS_USER_AGENT / usajobsUserAgent yes Real contact email per USAJOBS TOS
usajobsMaxJobsPerTerm no Per-term cap (default 100)

The orchestrator's country gating restricts this source to the United States.