stage-cli 1.0.0__py3-none-any.whl
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- stage/__init__.py +1 -0
- stage/__main__.py +8 -0
- stage/banner.py +32 -0
- stage/bootstrap/__init__.py +0 -0
- stage/bootstrap/openjobs.py +392 -0
- stage/classify/__init__.py +29 -0
- stage/classify/eligibility.py +115 -0
- stage/classify/internship.py +64 -0
- stage/classify/role.py +91 -0
- stage/classify/scope.py +47 -0
- stage/cli/__init__.py +0 -0
- stage/cli/app.py +4 -0
- stage/cli/commands/__init__.py +8 -0
- stage/cli/commands/discovery.py +294 -0
- stage/cli/commands/insight.py +494 -0
- stage/cli/commands/pipeline.py +337 -0
- stage/cli/commands/postings.py +473 -0
- stage/cli/commands/schedule.py +171 -0
- stage/cli/housekeeping.py +64 -0
- stage/cli/logfile.py +56 -0
- stage/cli/notify.py +170 -0
- stage/cli/options.py +678 -0
- stage/cli/render.py +1398 -0
- stage/cli/runlock.py +74 -0
- stage/cli/schedule.py +702 -0
- stage/cli/schedule_state.py +363 -0
- stage/cli/selection.py +83 -0
- stage/cli/serialize.py +196 -0
- stage/companies.py +542 -0
- stage/data/companies/a.yaml +1289 -0
- stage/data/companies/b.yaml +900 -0
- stage/data/companies/c.yaml +1377 -0
- stage/data/companies/d.yaml +497 -0
- stage/data/companies/e.yaml +519 -0
- stage/data/companies/f.yaml +454 -0
- stage/data/companies/g.yaml +601 -0
- stage/data/companies/h.yaml +446 -0
- stage/data/companies/i.yaml +503 -0
- stage/data/companies/j.yaml +138 -0
- stage/data/companies/k.yaml +278 -0
- stage/data/companies/l.yaml +402 -0
- stage/data/companies/m.yaml +937 -0
- stage/data/companies/n.yaml +549 -0
- stage/data/companies/o.yaml +371 -0
- stage/data/companies/other.yaml +58 -0
- stage/data/companies/p.yaml +825 -0
- stage/data/companies/q.yaml +121 -0
- stage/data/companies/r.yaml +583 -0
- stage/data/companies/s.yaml +1140 -0
- stage/data/companies/t.yaml +817 -0
- stage/data/companies/u.yaml +196 -0
- stage/data/companies/v.yaml +325 -0
- stage/data/companies/w.yaml +353 -0
- stage/data/companies/x.yaml +67 -0
- stage/data/companies/y.yaml +36 -0
- stage/data/companies/z.yaml +146 -0
- stage/data/fonts/DejaVuSans.LICENSE.txt +99 -0
- stage/data/fonts/DejaVuSans.ttf +0 -0
- stage/data/lexicon/company_tokens.yaml +228 -0
- stage/data/lexicon/eligibility.yaml +455 -0
- stage/data/lexicon/inclusive_suffixes.yaml +37 -0
- stage/data/lexicon/internship.yaml +187 -0
- stage/data/lexicon/language.yaml +226 -0
- stage/data/lexicon/locations.yaml +1159 -0
- stage/data/lexicon/roles.yaml +2012 -0
- stage/data/lexicon/terms.yaml +76 -0
- stage/data/lexicon/workday_facets.yaml +27 -0
- stage/data/seed_companies.yaml +198 -0
- stage/dedup/__init__.py +19 -0
- stage/dedup/identity.py +113 -0
- stage/dedup/resolve.py +97 -0
- stage/domain/__init__.py +244 -0
- stage/domain/company.py +49 -0
- stage/domain/coverage.py +86 -0
- stage/domain/custom_board.py +92 -0
- stage/domain/discovery.py +94 -0
- stage/domain/enums.py +114 -0
- stage/domain/events.py +204 -0
- stage/domain/filters.py +27 -0
- stage/domain/health.py +169 -0
- stage/domain/ids.py +48 -0
- stage/domain/job.py +47 -0
- stage/domain/matching.py +15 -0
- stage/domain/priority.py +34 -0
- stage/domain/quarantine.py +39 -0
- stage/domain/rate_state.py +78 -0
- stage/domain/retention.py +20 -0
- stage/domain/rotation.py +46 -0
- stage/domain/signals.py +12 -0
- stage/domain/sync_run.py +35 -0
- stage/domain/text.py +113 -0
- stage/domain/validator.py +14 -0
- stage/domain/visits.py +60 -0
- stage/domain/workday.py +38 -0
- stage/http/__init__.py +58 -0
- stage/http/breaker.py +53 -0
- stage/http/cache.py +44 -0
- stage/http/client.py +725 -0
- stage/http/profiles.py +101 -0
- stage/lexicon.py +370 -0
- stage/normalize/__init__.py +16 -0
- stage/normalize/language.py +47 -0
- stage/normalize/location.py +271 -0
- stage/normalize/terms.py +153 -0
- stage/normalize/urls.py +122 -0
- stage/paths.py +86 -0
- stage/py.typed +0 -0
- stage/services/__init__.py +0 -0
- stage/services/canary.py +120 -0
- stage/services/coverage.py +231 -0
- stage/services/discover.py +747 -0
- stage/services/export.py +274 -0
- stage/services/health.py +237 -0
- stage/services/maintenance.py +225 -0
- stage/services/quarantine.py +20 -0
- stage/services/query.py +86 -0
- stage/services/sync.py +1257 -0
- stage/sources/__init__.py +82 -0
- stage/sources/_text.py +79 -0
- stage/sources/ashby.py +93 -0
- stage/sources/bamboohr.py +80 -0
- stage/sources/base.py +225 -0
- stage/sources/breezy.py +90 -0
- stage/sources/collage.py +60 -0
- stage/sources/community_feeds.py +142 -0
- stage/sources/curated_markdown.py +289 -0
- stage/sources/custom_json.py +610 -0
- stage/sources/espresso.py +154 -0
- stage/sources/feed.py +44 -0
- stage/sources/greenhouse.py +104 -0
- stage/sources/jobbank.py +147 -0
- stage/sources/jobvite.py +133 -0
- stage/sources/lever.py +76 -0
- stage/sources/oracle_cloud.py +187 -0
- stage/sources/platforms.py +609 -0
- stage/sources/quebec_emploi.py +146 -0
- stage/sources/recruitee.py +96 -0
- stage/sources/simplify.py +110 -0
- stage/sources/smartrecruiters.py +216 -0
- stage/sources/speedyapply.py +200 -0
- stage/sources/themuse.py +157 -0
- stage/sources/workable.py +83 -0
- stage/sources/workday.py +524 -0
- stage/sources/zshah.py +99 -0
- stage/storage/__init__.py +29 -0
- stage/storage/migrations/0001_initial.sql +239 -0
- stage/storage/migrations/__init__.py +135 -0
- stage/storage/repository.py +213 -0
- stage/storage/search.py +28 -0
- stage/storage/sqlite_repo.py +1586 -0
- stage/storage/writer.py +249 -0
- stage/tui/__init__.py +0 -0
- stage/tui/app.py +82 -0
- stage/tui/help.py +26 -0
- stage/tui/safe.py +21 -0
- stage/tui/screens/__init__.py +0 -0
- stage/tui/screens/boards.py +186 -0
- stage/tui/screens/postings.py +509 -0
- stage/tui/screens/review.py +209 -0
- stage/tui/screens/splash.py +37 -0
- stage/tui/screens/stats.py +124 -0
- stage/tui/screens/sync.py +194 -0
- stage/tui/state.py +160 -0
- stage/tui/theme.tcss +205 -0
- stage/tui/widgets/__init__.py +0 -0
- stage_cli-1.0.0.dist-info/METADATA +379 -0
- stage_cli-1.0.0.dist-info/RECORD +170 -0
- stage_cli-1.0.0.dist-info/WHEEL +4 -0
- stage_cli-1.0.0.dist-info/entry_points.txt +2 -0
- stage_cli-1.0.0.dist-info/licenses/LICENSE +21 -0
|
@@ -0,0 +1,503 @@
|
|
|
1
|
+
- name: iA Financial Group
|
|
2
|
+
platform: workday
|
|
3
|
+
slug: ia
|
|
4
|
+
source_of_record: discover
|
|
5
|
+
last_verified: &id007 2026-08-18
|
|
6
|
+
workday_tenant: ia
|
|
7
|
+
workday_site: Professional
|
|
8
|
+
workday_dc: wd3
|
|
9
|
+
notes: '2026-08-18: found by a plain-HTTP scan of the employer''s own careers page
|
|
10
|
+
for a known ATS hostname, part of the Montreal/Quebec sweep.'
|
|
11
|
+
- name: IBKR External
|
|
12
|
+
platform: greenhouse
|
|
13
|
+
slug: ibkrexternal
|
|
14
|
+
source_of_record: openjobs
|
|
15
|
+
enabled: false
|
|
16
|
+
notes: '2026-08-08: probed — board does not respond; re-resolve with discover --url
|
|
17
|
+
Re-probed 2026-08-14 and still dead.'
|
|
18
|
+
- name: IBM
|
|
19
|
+
platform: custom_json
|
|
20
|
+
slug: ibm
|
|
21
|
+
source_of_record: discover
|
|
22
|
+
last_verified: 2026-08-20
|
|
23
|
+
notes: '2026-08-20: owner-captured search request; field_keyword_18 is IBM''s own
|
|
24
|
+
Internship facet and the aggregations were dropped because they only feed the
|
|
25
|
+
facet sidebar.'
|
|
26
|
+
custom:
|
|
27
|
+
url: https://www-api.ibm.com/search/api/v2
|
|
28
|
+
method: POST
|
|
29
|
+
body:
|
|
30
|
+
appId: careers
|
|
31
|
+
scopes:
|
|
32
|
+
- careers2
|
|
33
|
+
query:
|
|
34
|
+
bool:
|
|
35
|
+
must: []
|
|
36
|
+
post_filter:
|
|
37
|
+
term:
|
|
38
|
+
field_keyword_18: Internship
|
|
39
|
+
size: 30
|
|
40
|
+
sort:
|
|
41
|
+
- _score: desc
|
|
42
|
+
- pageviews: desc
|
|
43
|
+
lang: zz
|
|
44
|
+
localeSelector: {}
|
|
45
|
+
sm:
|
|
46
|
+
query: ''
|
|
47
|
+
lang: zz
|
|
48
|
+
_source:
|
|
49
|
+
- _id
|
|
50
|
+
- title
|
|
51
|
+
- url
|
|
52
|
+
- description
|
|
53
|
+
- language
|
|
54
|
+
- field_keyword_05
|
|
55
|
+
- field_keyword_08
|
|
56
|
+
- field_keyword_18
|
|
57
|
+
- field_keyword_19
|
|
58
|
+
headers:
|
|
59
|
+
Origin: https://www.ibm.com
|
|
60
|
+
Referer: https://www.ibm.com/
|
|
61
|
+
jobs_path: hits.hits
|
|
62
|
+
fields:
|
|
63
|
+
title: _source.title
|
|
64
|
+
id: _id
|
|
65
|
+
url: _source.url
|
|
66
|
+
description: _source.description
|
|
67
|
+
location: _source.field_keyword_19
|
|
68
|
+
category: _source.field_keyword_08
|
|
69
|
+
employment_type: _source.field_keyword_18
|
|
70
|
+
page_param: from
|
|
71
|
+
page_size: 30
|
|
72
|
+
page_step: 30
|
|
73
|
+
max_pages: 12
|
|
74
|
+
- name: Icon Creative
|
|
75
|
+
platform: bamboohr
|
|
76
|
+
slug: iconcreative
|
|
77
|
+
source_of_record: openjobs
|
|
78
|
+
last_verified: &id001 2026-08-11
|
|
79
|
+
notes: '2026-08-11: enabled on slug evidence - bamboohr publishes no board name,
|
|
80
|
+
but the slug folds to the caption and the board returned 25 job(s)'
|
|
81
|
+
- name: ideogram
|
|
82
|
+
platform: ashby
|
|
83
|
+
slug: ideogram
|
|
84
|
+
source_of_record: openjobs
|
|
85
|
+
last_verified: *id001
|
|
86
|
+
notes: '2026-08-11: enabled on slug evidence - ashby publishes no board name, but
|
|
87
|
+
the slug folds to the caption and the board returned 6 job(s)'
|
|
88
|
+
- name: IDEXX
|
|
89
|
+
platform: workday
|
|
90
|
+
slug: idexx
|
|
91
|
+
source_of_record: discover
|
|
92
|
+
workday_tenant: idexx
|
|
93
|
+
workday_site: IDEXX
|
|
94
|
+
workday_dc: wd1
|
|
95
|
+
enabled: false
|
|
96
|
+
notes: '2026-08-20: re-checked tenant-wide; the CXS jobs endpoint still answers
|
|
97
|
+
422 for this site, so the closed-contract verdict stands on a fresh measurement.'
|
|
98
|
+
- name: IDEXX (Phenom)
|
|
99
|
+
platform: custom_json
|
|
100
|
+
slug: idexx-phenom
|
|
101
|
+
source_of_record: discover
|
|
102
|
+
last_verified: 2026-08-18
|
|
103
|
+
notes: '2026-08-18: supplied by the owner. The Workday row for this employer is
|
|
104
|
+
parked; the live board is Phenom.'
|
|
105
|
+
custom:
|
|
106
|
+
url: https://careers.idexx.com/widgets
|
|
107
|
+
method: POST
|
|
108
|
+
body:
|
|
109
|
+
lang: en_us
|
|
110
|
+
deviceType: desktop
|
|
111
|
+
country: us
|
|
112
|
+
pageName: search-results
|
|
113
|
+
ddoKey: refineSearch
|
|
114
|
+
from: 0
|
|
115
|
+
size: 10
|
|
116
|
+
jobs: true
|
|
117
|
+
counts: true
|
|
118
|
+
all_fields:
|
|
119
|
+
- category
|
|
120
|
+
- country
|
|
121
|
+
- type
|
|
122
|
+
keywords: intern
|
|
123
|
+
siteType: external
|
|
124
|
+
clearAll: false
|
|
125
|
+
selected_fields: {}
|
|
126
|
+
locationData: {}
|
|
127
|
+
sortBy: ''
|
|
128
|
+
subsearch: ''
|
|
129
|
+
jobs_path: refineSearch.data.jobs
|
|
130
|
+
fields:
|
|
131
|
+
title: title
|
|
132
|
+
id: jobSeqNo
|
|
133
|
+
location: location
|
|
134
|
+
url: applyUrl
|
|
135
|
+
description: descriptionTeaser
|
|
136
|
+
category: category
|
|
137
|
+
department: department
|
|
138
|
+
page_param: from
|
|
139
|
+
page_size: 10
|
|
140
|
+
max_pages: 4
|
|
141
|
+
- name: iFLIP4
|
|
142
|
+
platform: smartrecruiters
|
|
143
|
+
slug: iflip4
|
|
144
|
+
source_of_record: discover
|
|
145
|
+
last_verified: 2026-08-18
|
|
146
|
+
notes: '2026-08-18: seen in feed postings but absent from the registry; discover
|
|
147
|
+
matched smartrecruiters/iflip4 with 29 job(s) and the board named itself, so it
|
|
148
|
+
is polled directly instead of secondhand'
|
|
149
|
+
- name: IGG
|
|
150
|
+
platform: bamboohr
|
|
151
|
+
slug: igg
|
|
152
|
+
source_of_record: openjobs
|
|
153
|
+
last_verified: *id001
|
|
154
|
+
notes: '2026-08-11: enabled on slug evidence - bamboohr publishes no board name,
|
|
155
|
+
but the slug folds to the caption and the board returned 6 job(s)'
|
|
156
|
+
- name: iHeartMedia
|
|
157
|
+
platform: workday
|
|
158
|
+
slug: iheartmedia
|
|
159
|
+
source_of_record: discover
|
|
160
|
+
last_verified: 2026-08-16
|
|
161
|
+
workday_tenant: iheartmedia
|
|
162
|
+
workday_site: External_iHM
|
|
163
|
+
workday_dc: wd5
|
|
164
|
+
notes: '2026-08-16: coordinates taken from this employer''s own apply URL, then
|
|
165
|
+
verified by a scratch sync (5 posting(s), 0 kept)'
|
|
166
|
+
- name: Illumina
|
|
167
|
+
platform: workday
|
|
168
|
+
slug: illumina
|
|
169
|
+
source_of_record: openjobs
|
|
170
|
+
last_verified: &id010 2026-08-14
|
|
171
|
+
recheck_after: &id006 2026-10-01
|
|
172
|
+
workday_tenant: illumina
|
|
173
|
+
workday_site: illumina-careers
|
|
174
|
+
workday_dc: wd1
|
|
175
|
+
notes: '2026-08-14: verified by a real sync — this board returned postings'
|
|
176
|
+
- name: Image Engine
|
|
177
|
+
platform: bamboohr
|
|
178
|
+
slug: imageengine
|
|
179
|
+
source_of_record: openjobs
|
|
180
|
+
last_verified: *id001
|
|
181
|
+
notes: '2026-08-11: enabled on slug evidence - bamboohr publishes no board name,
|
|
182
|
+
but the slug folds to the caption and the board returned 17 job(s)'
|
|
183
|
+
- name: IMC
|
|
184
|
+
platform: greenhouse
|
|
185
|
+
slug: imc
|
|
186
|
+
source_of_record: discover
|
|
187
|
+
last_verified: &id002 2026-08-14
|
|
188
|
+
- name: Inbulks
|
|
189
|
+
platform: smartrecruiters
|
|
190
|
+
slug: inbulkscorp
|
|
191
|
+
source_of_record: discover
|
|
192
|
+
last_verified: &id003 2026-08-14
|
|
193
|
+
- name: Incident IQ
|
|
194
|
+
platform: greenhouse
|
|
195
|
+
slug: incidentiq
|
|
196
|
+
source_of_record: discover
|
|
197
|
+
last_verified: *id002
|
|
198
|
+
- name: Indigo Books
|
|
199
|
+
platform: smartrecruiters
|
|
200
|
+
slug: indigobooksmusic
|
|
201
|
+
source_of_record: discover
|
|
202
|
+
last_verified: &id004 2026-08-17
|
|
203
|
+
notes: '2026-08-17: found by a plain-HTTP scan of the employer''s own careers page
|
|
204
|
+
for a known ATS hostname, no browser and one request per host.'
|
|
205
|
+
- name: Infineon
|
|
206
|
+
platform: custom_json
|
|
207
|
+
slug: infineon
|
|
208
|
+
source_of_record: discover
|
|
209
|
+
last_verified: 2026-08-17
|
|
210
|
+
notes: Eightfold tenant; url_template added after 6 kept postings were found pointing
|
|
211
|
+
at the listing API instead of the job page.
|
|
212
|
+
custom:
|
|
213
|
+
url: https://jobs.infineon.com/api/pcsx/search?domain=infineon.com&query=&location=&start=0&
|
|
214
|
+
jobs_path: data.positions
|
|
215
|
+
fields:
|
|
216
|
+
title: name
|
|
217
|
+
id: id
|
|
218
|
+
location: locations
|
|
219
|
+
category: department
|
|
220
|
+
url_template: https://jobs.infineon.com/careers/job/{id}
|
|
221
|
+
page_param: start
|
|
222
|
+
page_size: 10
|
|
223
|
+
max_pages: 20
|
|
224
|
+
- name: InfiniteQuant
|
|
225
|
+
platform: smartrecruiters
|
|
226
|
+
slug: infinitequant
|
|
227
|
+
source_of_record: discover
|
|
228
|
+
last_verified: *id003
|
|
229
|
+
- name: InfluxData
|
|
230
|
+
platform: ashby
|
|
231
|
+
slug: influxdata
|
|
232
|
+
source_of_record: discover
|
|
233
|
+
last_verified: *id004
|
|
234
|
+
notes: '2026-08-17: found by careers-page ATS scan, one plain GET. verify returned
|
|
235
|
+
4 jobs and needs-a-manual-check, the expected verdict where the platform publishes
|
|
236
|
+
no board name; token equals the company name'
|
|
237
|
+
- name: Infojini
|
|
238
|
+
platform: smartrecruiters
|
|
239
|
+
slug: infojiniinc1
|
|
240
|
+
source_of_record: discover
|
|
241
|
+
last_verified: &id005 2026-08-16
|
|
242
|
+
enabled: false
|
|
243
|
+
notes: '2026-08-16: IT staffing agency: posts client roles rather than its own,
|
|
244
|
+
so its rows are third-hand data.'
|
|
245
|
+
- name: ING
|
|
246
|
+
platform: workday
|
|
247
|
+
slug: ing
|
|
248
|
+
source_of_record: discover
|
|
249
|
+
last_verified: &id008 2026-08-14
|
|
250
|
+
workday_tenant: ing
|
|
251
|
+
workday_site: icsgblcor
|
|
252
|
+
workday_dc: wd3
|
|
253
|
+
notes: '2026-08-14: verified by a real sync — this board returned postings, which
|
|
254
|
+
is the only verification a Workday tenant can have without an offline probe'
|
|
255
|
+
- name: Inherent
|
|
256
|
+
platform: ashby
|
|
257
|
+
slug: inherent
|
|
258
|
+
source_of_record: discover
|
|
259
|
+
last_verified: *id005
|
|
260
|
+
name_gate_exempt: true
|
|
261
|
+
notes: '2026-08-16: token from this employer''s own apply URL, not slug guessing;
|
|
262
|
+
ashby publishes no board name, so provenance is the evidence (6 job(s))'
|
|
263
|
+
- name: Inizio
|
|
264
|
+
platform: greenhouse
|
|
265
|
+
slug: inizio
|
|
266
|
+
source_of_record: discover
|
|
267
|
+
last_verified: *id002
|
|
268
|
+
- name: Insitro
|
|
269
|
+
platform: ashby
|
|
270
|
+
slug: insitro
|
|
271
|
+
source_of_record: discover
|
|
272
|
+
last_verified: 2026-08-17
|
|
273
|
+
name_gate_exempt: true
|
|
274
|
+
notes: '2026-08-17: found by browser-assisted discovery from the employer''s own
|
|
275
|
+
careers page and the board answered with postings, but ashby publishes no board
|
|
276
|
+
name, so provenance is the evidence rather than a name match'
|
|
277
|
+
- name: Instacart
|
|
278
|
+
platform: greenhouse
|
|
279
|
+
slug: instacart
|
|
280
|
+
source_of_record: openjobs
|
|
281
|
+
last_verified: *id002
|
|
282
|
+
- name: InstaLILY
|
|
283
|
+
platform: greenhouse
|
|
284
|
+
slug: instalilyai
|
|
285
|
+
source_of_record: discover
|
|
286
|
+
last_verified: *id002
|
|
287
|
+
- name: Instead
|
|
288
|
+
platform: greenhouse
|
|
289
|
+
slug: instead
|
|
290
|
+
source_of_record: discover
|
|
291
|
+
last_verified: *id002
|
|
292
|
+
- name: Institute of Foundation Models
|
|
293
|
+
platform: lever
|
|
294
|
+
slug: ifm-us
|
|
295
|
+
source_of_record: discover
|
|
296
|
+
last_verified: &id009 2026-08-14
|
|
297
|
+
name_gate_exempt: true
|
|
298
|
+
notes: '2026-08-14: board token taken from this employer''s own application URL
|
|
299
|
+
in a feed posting, not from slug guessing; lever publishes no board name, so the
|
|
300
|
+
name gate cannot confirm it and provenance is the evidence (44 job(s))'
|
|
301
|
+
- name: Intact
|
|
302
|
+
platform: workday
|
|
303
|
+
slug: intactfc
|
|
304
|
+
source_of_record: discover
|
|
305
|
+
last_verified: 2026-08-16
|
|
306
|
+
recheck_after: *id006
|
|
307
|
+
workday_tenant: intactfc
|
|
308
|
+
workday_site: intactfc
|
|
309
|
+
workday_dc: wd3
|
|
310
|
+
notes: '2026-08-16: un-parked. The 2026-08-11 reason was a budget argument against
|
|
311
|
+
a 120-request Workday ceiling that is now 732.'
|
|
312
|
+
- name: Integra FEC
|
|
313
|
+
platform: greenhouse
|
|
314
|
+
slug: integra
|
|
315
|
+
source_of_record: discover
|
|
316
|
+
last_verified: *id002
|
|
317
|
+
- name: Intel
|
|
318
|
+
platform: workday
|
|
319
|
+
slug: intel
|
|
320
|
+
source_of_record: openjobs
|
|
321
|
+
last_verified: 2026-08-03
|
|
322
|
+
workday_tenant: intel
|
|
323
|
+
workday_site: External
|
|
324
|
+
workday_dc: wd1
|
|
325
|
+
- name: Intelcom
|
|
326
|
+
platform: workday
|
|
327
|
+
slug: intelcomgroup
|
|
328
|
+
source_of_record: discover
|
|
329
|
+
last_verified: *id007
|
|
330
|
+
workday_tenant: intelcomgroup
|
|
331
|
+
workday_site: Intelcom
|
|
332
|
+
workday_dc: wd3
|
|
333
|
+
notes: '2026-08-18: found by a plain-HTTP scan of the employer''s own careers page
|
|
334
|
+
for a known ATS hostname, part of the Montreal/Quebec sweep.'
|
|
335
|
+
- name: Interac
|
|
336
|
+
platform: workday
|
|
337
|
+
slug: interac
|
|
338
|
+
source_of_record: discover
|
|
339
|
+
last_verified: 2026-08-20
|
|
340
|
+
workday_tenant: interac
|
|
341
|
+
workday_site: Interac
|
|
342
|
+
workday_dc: wd3
|
|
343
|
+
notes: Coordinates from the employer's own careers URL; the board answered with
|
|
344
|
+
36 postings.
|
|
345
|
+
- name: Interactive Brokers
|
|
346
|
+
platform: custom_json
|
|
347
|
+
slug: dayforce-ibgllc
|
|
348
|
+
source_of_record: discover
|
|
349
|
+
last_verified: 2026-08-18
|
|
350
|
+
rate_profile: conservative
|
|
351
|
+
notes: 'Dayforce, reached by sending the /api/auth/csrf token as x-csrf-token; no
|
|
352
|
+
stable per-posting URL exists so apply_url is the board page. 2026-08-21: two
|
|
353
|
+
boards on this host answered 403 in one run, so the row is pinned conservative.'
|
|
354
|
+
custom:
|
|
355
|
+
url: https://jobs.dayforcehcm.com/api/geo/ibgllc/jobposting/search
|
|
356
|
+
method: POST
|
|
357
|
+
body:
|
|
358
|
+
clientNamespace: ibgllc
|
|
359
|
+
jobBoardCode: CANDIDATEPORTAL
|
|
360
|
+
cultureCode: en-CA
|
|
361
|
+
distanceUnit: 1
|
|
362
|
+
handshake_url: https://jobs.dayforcehcm.com/api/auth/csrf
|
|
363
|
+
token_pattern: '"csrfToken":"([a-f0-9]+)"'
|
|
364
|
+
token_header: x-csrf-token
|
|
365
|
+
jobs_path: jobPostings
|
|
366
|
+
fields:
|
|
367
|
+
title: jobTitle
|
|
368
|
+
id: jobPostingId
|
|
369
|
+
description: jobDescription
|
|
370
|
+
location: postingLocations.0.formattedAddress
|
|
371
|
+
url_template: https://jobs.dayforcehcm.com/en-CA/ibgllc/CANDIDATEPORTAL/jobs/{id}
|
|
372
|
+
page_param: paginationStart
|
|
373
|
+
page_size: 25
|
|
374
|
+
page_step: 25
|
|
375
|
+
max_pages: 20
|
|
376
|
+
- name: Interco
|
|
377
|
+
platform: smartrecruiters
|
|
378
|
+
slug: interco
|
|
379
|
+
source_of_record: discover
|
|
380
|
+
last_verified: *id003
|
|
381
|
+
- name: Interdigital
|
|
382
|
+
platform: workday
|
|
383
|
+
slug: interdigital
|
|
384
|
+
source_of_record: discover
|
|
385
|
+
last_verified: *id008
|
|
386
|
+
workday_tenant: interdigital
|
|
387
|
+
workday_site: InterDigital_Intern
|
|
388
|
+
workday_dc: wd5
|
|
389
|
+
notes: '2026-08-14: verified by a real sync — this board returned postings, which
|
|
390
|
+
is the only verification a Workday tenant can have without an offline probe'
|
|
391
|
+
- name: International Rescue Committee (IRC)
|
|
392
|
+
platform: workday
|
|
393
|
+
slug: theirc
|
|
394
|
+
source_of_record: discover
|
|
395
|
+
last_verified: *id008
|
|
396
|
+
workday_tenant: theirc
|
|
397
|
+
workday_site: External_Careers
|
|
398
|
+
workday_dc: wd1
|
|
399
|
+
notes: '2026-08-14: verified by a real sync — this board returned postings, which
|
|
400
|
+
is the only verification a Workday tenant can have without an offline probe'
|
|
401
|
+
- name: Internship
|
|
402
|
+
platform: ashby
|
|
403
|
+
slug: interplay
|
|
404
|
+
source_of_record: discover
|
|
405
|
+
last_verified: *id009
|
|
406
|
+
name_gate_exempt: true
|
|
407
|
+
notes: '2026-08-14: board token taken from this employer''s own application URL
|
|
408
|
+
in a feed posting, not from slug guessing; ashby publishes no board name, so the
|
|
409
|
+
name gate cannot confirm it and provenance is the evidence (13 job(s))'
|
|
410
|
+
- name: Intropic
|
|
411
|
+
platform: lever
|
|
412
|
+
slug: intropic
|
|
413
|
+
source_of_record: discover
|
|
414
|
+
last_verified: *id005
|
|
415
|
+
name_gate_exempt: true
|
|
416
|
+
notes: '2026-08-16: token from this employer''s own apply URL, not slug guessing;
|
|
417
|
+
lever publishes no board name, so provenance is the evidence (11 job(s))'
|
|
418
|
+
- name: Intuit
|
|
419
|
+
platform: custom_json
|
|
420
|
+
slug: intuit-avature
|
|
421
|
+
source_of_record: discover
|
|
422
|
+
last_verified: 2026-08-21
|
|
423
|
+
notes: '2026-08-21: supplied Avature facets returned two current co-op postings
|
|
424
|
+
through the server-rendered listing.'
|
|
425
|
+
custom:
|
|
426
|
+
url: https://jobs.intuit.com/search-jobs?acm=9205024,9205760,9205744&alrpm=ALL&ascf=%5B%7B%22key%22%3A%22ALL%22%2C%22value%22%3A%22%22%7D%5D
|
|
427
|
+
format: html
|
|
428
|
+
row_selector: li[data-intuit-jobid]
|
|
429
|
+
fields:
|
|
430
|
+
title: h2
|
|
431
|
+
id: ::attr(data-intuit-jobid)
|
|
432
|
+
url: a.sr-item::attr(href)
|
|
433
|
+
location: span.job-location
|
|
434
|
+
category: ::attr(data-category)
|
|
435
|
+
page_param: p
|
|
436
|
+
page_size: 15
|
|
437
|
+
page_start: 1
|
|
438
|
+
page_step: 1
|
|
439
|
+
max_pages: 2
|
|
440
|
+
- name: Intuitive Surgical
|
|
441
|
+
platform: smartrecruiters
|
|
442
|
+
slug: intuitive
|
|
443
|
+
source_of_record: discover
|
|
444
|
+
last_verified: *id003
|
|
445
|
+
- name: Investissement Québec
|
|
446
|
+
platform: workday
|
|
447
|
+
slug: investquebec
|
|
448
|
+
source_of_record: discover
|
|
449
|
+
last_verified: 2026-08-20
|
|
450
|
+
workday_tenant: investquebec
|
|
451
|
+
workday_site: ext
|
|
452
|
+
workday_dc: wd10
|
|
453
|
+
notes: Coordinates from the employer's own careers URL; 36 postings, entirely French
|
|
454
|
+
and Quebec-based.
|
|
455
|
+
- name: Inworld AI
|
|
456
|
+
platform: greenhouse
|
|
457
|
+
slug: inworldai
|
|
458
|
+
source_of_record: openjobs
|
|
459
|
+
enabled: false
|
|
460
|
+
notes: '2026-08-08: probed — board does not respond; re-resolve with discover --url
|
|
461
|
+
Re-probed 2026-08-14 and still dead.'
|
|
462
|
+
- name: Ion
|
|
463
|
+
platform: lever
|
|
464
|
+
slug: ion
|
|
465
|
+
source_of_record: openjobs
|
|
466
|
+
last_verified: 2026-08-04
|
|
467
|
+
- name: Iron Mountain
|
|
468
|
+
platform: workday
|
|
469
|
+
slug: ironmountain
|
|
470
|
+
source_of_record: openjobs
|
|
471
|
+
last_verified: *id010
|
|
472
|
+
recheck_after: *id006
|
|
473
|
+
workday_tenant: ironmountain
|
|
474
|
+
workday_site: iron-mountain-jobs
|
|
475
|
+
workday_dc: wd5
|
|
476
|
+
notes: '2026-08-14: verified by a real sync — this board returned postings'
|
|
477
|
+
- name: ISG
|
|
478
|
+
platform: jobvite
|
|
479
|
+
slug: isg-one
|
|
480
|
+
source_of_record: openjobs
|
|
481
|
+
enabled: false
|
|
482
|
+
notes: '2026-08-21: re-checked on the server-rendered board as well; the tenant
|
|
483
|
+
redirects to its own /careers page, so the board moved off Jobvite'
|
|
484
|
+
- name: ISS Stoxx
|
|
485
|
+
platform: workday
|
|
486
|
+
slug: issgovernance
|
|
487
|
+
source_of_record: openjobs
|
|
488
|
+
last_verified: *id010
|
|
489
|
+
recheck_after: *id006
|
|
490
|
+
workday_tenant: issgovernance
|
|
491
|
+
workday_site: ISScareers
|
|
492
|
+
workday_dc: wd1
|
|
493
|
+
notes: '2026-08-14: verified by a real sync — this board returned postings'
|
|
494
|
+
- name: Ivy Tech Community College
|
|
495
|
+
platform: workday
|
|
496
|
+
slug: ivytech
|
|
497
|
+
source_of_record: discover
|
|
498
|
+
last_verified: *id008
|
|
499
|
+
workday_tenant: ivytech
|
|
500
|
+
workday_site: ivy_tech_careers
|
|
501
|
+
workday_dc: wd1
|
|
502
|
+
notes: '2026-08-14: verified by a real sync — this board returned postings, which
|
|
503
|
+
is the only verification a Workday tenant can have without an offline probe'
|
|
@@ -0,0 +1,138 @@
|
|
|
1
|
+
- name: J.S. Held LLC
|
|
2
|
+
platform: smartrecruiters
|
|
3
|
+
slug: jsheldllc
|
|
4
|
+
source_of_record: openjobs
|
|
5
|
+
last_verified: &id001 2026-08-14
|
|
6
|
+
- name: Jade Global
|
|
7
|
+
platform: smartrecruiters
|
|
8
|
+
slug: jadeglobal
|
|
9
|
+
source_of_record: discover
|
|
10
|
+
last_verified: *id001
|
|
11
|
+
- name: Jain Global
|
|
12
|
+
platform: workday
|
|
13
|
+
slug: jainglobal
|
|
14
|
+
source_of_record: discover
|
|
15
|
+
last_verified: 2026-08-14
|
|
16
|
+
workday_tenant: jainglobal
|
|
17
|
+
workday_site: ExternalSite
|
|
18
|
+
workday_dc: wd5
|
|
19
|
+
notes: '2026-08-14: verified by a real sync — this board returned postings, which
|
|
20
|
+
is the only verification a Workday tenant can have without an offline probe'
|
|
21
|
+
- name: Jam City
|
|
22
|
+
platform: lever
|
|
23
|
+
slug: jamcity
|
|
24
|
+
source_of_record: openjobs
|
|
25
|
+
last_verified: 2026-08-04
|
|
26
|
+
- name: Jane Street
|
|
27
|
+
platform: greenhouse
|
|
28
|
+
slug: janestreet
|
|
29
|
+
source_of_record: openjobs
|
|
30
|
+
last_verified: &id003 2026-08-14
|
|
31
|
+
- name: Jefferies
|
|
32
|
+
platform: custom_json
|
|
33
|
+
slug: jefferies
|
|
34
|
+
source_of_record: discover
|
|
35
|
+
last_verified: 2026-08-20
|
|
36
|
+
enabled: false
|
|
37
|
+
notes: '2026-08-20: same oleeoProtect altcha challenge as the Evercore row; the
|
|
38
|
+
Bank of America tenant on the same platform does not challenge us, so this is
|
|
39
|
+
tenant configuration.'
|
|
40
|
+
custom:
|
|
41
|
+
url: https://jefferies.tal.net/vx/lang-en-GB/mobile-0/appcentre-ext/brand-4/candidate/jobboard/vacancy/2/adv/
|
|
42
|
+
fields:
|
|
43
|
+
title: title
|
|
44
|
+
id: id
|
|
45
|
+
- name: JetBrains
|
|
46
|
+
platform: greenhouse
|
|
47
|
+
slug: jetbrains
|
|
48
|
+
source_of_record: openjobs
|
|
49
|
+
last_verified: 2026-08-16
|
|
50
|
+
notes: '2026-08-16: ats_link recorded in the OpenJobs dataset, then verified by
|
|
51
|
+
a live probe that matched the company name on the returned board'
|
|
52
|
+
- name: Jobs for Humanity
|
|
53
|
+
platform: smartrecruiters
|
|
54
|
+
slug: jobsforhumanity
|
|
55
|
+
source_of_record: discover
|
|
56
|
+
last_verified: 2026-08-16
|
|
57
|
+
enabled: false
|
|
58
|
+
notes: '2026-08-16: aggregator: reposts other employers'' postings, so its rows
|
|
59
|
+
are third-hand data that duplicate real boards under a different company name.'
|
|
60
|
+
- name: John Deere
|
|
61
|
+
platform: custom_json
|
|
62
|
+
slug: john-deere
|
|
63
|
+
source_of_record: discover
|
|
64
|
+
last_verified: 2026-08-17
|
|
65
|
+
notes: Eightfold tenant reached through the shared /api/pcsx/search template.
|
|
66
|
+
custom:
|
|
67
|
+
url: https://careers.deere.com/api/pcsx/search?domain=johndeere.com&query=&location=&start=0&sort_by=hot&filter_seniority=0
|
|
68
|
+
jobs_path: data.positions
|
|
69
|
+
fields:
|
|
70
|
+
title: name
|
|
71
|
+
id: id
|
|
72
|
+
location: locations
|
|
73
|
+
category: department
|
|
74
|
+
url_template: https://careers.deere.com/careers/job/{id}
|
|
75
|
+
page_param: start
|
|
76
|
+
page_size: 10
|
|
77
|
+
max_pages: 20
|
|
78
|
+
- name: Johns Hopkins APL
|
|
79
|
+
platform: custom_json
|
|
80
|
+
slug: jhuapl
|
|
81
|
+
source_of_record: discover
|
|
82
|
+
last_verified: 2026-08-20
|
|
83
|
+
notes: '2026-08-20: iCIMS careers-home site, the same contract as the AMD row; 356
|
|
84
|
+
postings with full bodies.'
|
|
85
|
+
custom:
|
|
86
|
+
url: https://careers.jhuapl.edu/api/jobs?limit=100
|
|
87
|
+
jobs_path: jobs
|
|
88
|
+
fields:
|
|
89
|
+
title: data.title
|
|
90
|
+
id: data.slug
|
|
91
|
+
location: data.full_location
|
|
92
|
+
description: data.description
|
|
93
|
+
employment_type: data.employment_type
|
|
94
|
+
category: data.category
|
|
95
|
+
department: data.department
|
|
96
|
+
url_template: https://careers.jhuapl.edu/jobs/{id}
|
|
97
|
+
page_param: page
|
|
98
|
+
page_size: 100
|
|
99
|
+
page_start: 1
|
|
100
|
+
page_step: 1
|
|
101
|
+
max_pages: 8
|
|
102
|
+
- name: Johnson & Johnson
|
|
103
|
+
platform: workday
|
|
104
|
+
slug: jj
|
|
105
|
+
source_of_record: discover
|
|
106
|
+
last_verified: &id002 2026-08-16
|
|
107
|
+
workday_tenant: jj
|
|
108
|
+
workday_site: jj
|
|
109
|
+
workday_dc: wd5
|
|
110
|
+
notes: '2026-08-16: coordinates taken from this employer''s own apply URL, then
|
|
111
|
+
verified by a scratch sync — the board answered with 100 posting(s), 5 kept after
|
|
112
|
+
the CS-internship screens'
|
|
113
|
+
- name: Johnson Controls
|
|
114
|
+
platform: workday
|
|
115
|
+
slug: jci
|
|
116
|
+
source_of_record: discover
|
|
117
|
+
last_verified: *id002
|
|
118
|
+
workday_tenant: jci
|
|
119
|
+
workday_site: jci
|
|
120
|
+
workday_dc: wd5
|
|
121
|
+
notes: '2026-08-16: coordinates taken from this employer''s own apply URL, then
|
|
122
|
+
verified by a scratch sync — the board answered with 15 posting(s), 1 kept after
|
|
123
|
+
the CS-internship screens'
|
|
124
|
+
- name: JP Morgan Chase
|
|
125
|
+
platform: oracle_cloud
|
|
126
|
+
slug: jpmc
|
|
127
|
+
source_of_record: discover
|
|
128
|
+
last_verified: 2026-08-14
|
|
129
|
+
oracle_host: jpmc.fa.oraclecloud.com
|
|
130
|
+
oracle_site: CX_1001
|
|
131
|
+
notes: '2026-08-14: enabled to be verified by a real sync — the Oracle Cloud candidate
|
|
132
|
+
endpoint has no offline probe, and this host and site come from the employer''s
|
|
133
|
+
own application URL'
|
|
134
|
+
- name: Jump Trading
|
|
135
|
+
platform: greenhouse
|
|
136
|
+
slug: jumptrading
|
|
137
|
+
source_of_record: discover
|
|
138
|
+
last_verified: *id003
|