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
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>
23 lines
1.2 KiB
Markdown
23 lines
1.2 KiB
Markdown
# usajobs-extractor
|
|
|
|
US-government job listings via the public
|
|
[USAJOBS Search API](https://developer.usajobs.gov/api-reference/get-api-search) (`GET /api/Search` on `data.usajobs.gov`).
|
|
|
|
## Getting API access
|
|
|
|
1. Open the [USAJOBS Developer Site](https://developer.usajobs.gov/) 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.
|