@cavuno/board 1.19.0 → 1.20.0
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.
- package/dist/index.d.mts +605 -204
- package/dist/index.d.ts +605 -204
- package/dist/index.js +259 -1
- package/dist/index.mjs +259 -1
- package/package.json +1 -1
- package/skills/manifest.json +1 -1
package/dist/index.d.mts
CHANGED
|
@@ -15,7 +15,7 @@ interface components {
|
|
|
15
15
|
* @description String representing the object's type. Objects of the same type share the same value.
|
|
16
16
|
* @enum {string}
|
|
17
17
|
*/
|
|
18
|
-
object:
|
|
18
|
+
object: "api_key";
|
|
19
19
|
/** @description Public key ID component, embedded in the key prefix as `cavuno_live_<keyId>_`. */
|
|
20
20
|
keyId: string;
|
|
21
21
|
/** @description Human-readable name for the key, shown in the dashboard. */
|
|
@@ -40,14 +40,14 @@ interface components {
|
|
|
40
40
|
* @description String representing the object's type. Objects of the same type share the same value.
|
|
41
41
|
* @enum {string}
|
|
42
42
|
*/
|
|
43
|
-
object:
|
|
43
|
+
object: "audit_log";
|
|
44
44
|
/** @description Identifier of the account the entry belongs to. */
|
|
45
45
|
accountId: string;
|
|
46
46
|
/**
|
|
47
47
|
* @description Type of actor that performed the action.
|
|
48
48
|
* @enum {string}
|
|
49
49
|
*/
|
|
50
|
-
actorType:
|
|
50
|
+
actorType: "api_key" | "oauth_token" | "user_session" | "system";
|
|
51
51
|
/** @description Identifier of the actor that performed the action. */
|
|
52
52
|
actorId: string;
|
|
53
53
|
/** @description Human-readable label for the actor, suitable for display. */
|
|
@@ -78,20 +78,20 @@ interface components {
|
|
|
78
78
|
operations: ({
|
|
79
79
|
id: string;
|
|
80
80
|
/** @enum {string} */
|
|
81
|
-
method:
|
|
81
|
+
method: "POST";
|
|
82
82
|
body?: unknown;
|
|
83
83
|
action?: string;
|
|
84
84
|
resourceId?: string;
|
|
85
85
|
} | {
|
|
86
86
|
id: string;
|
|
87
87
|
/** @enum {string} */
|
|
88
|
-
method:
|
|
88
|
+
method: "PATCH";
|
|
89
89
|
body?: unknown;
|
|
90
90
|
resourceId: string;
|
|
91
91
|
} | {
|
|
92
92
|
id: string;
|
|
93
93
|
/** @enum {string} */
|
|
94
|
-
method:
|
|
94
|
+
method: "DELETE";
|
|
95
95
|
resourceId: string;
|
|
96
96
|
})[];
|
|
97
97
|
};
|
|
@@ -102,7 +102,7 @@ interface components {
|
|
|
102
102
|
* @description String representing the object's type. Objects of the same type share the same value.
|
|
103
103
|
* @enum {string}
|
|
104
104
|
*/
|
|
105
|
-
object:
|
|
105
|
+
object: "blog_author";
|
|
106
106
|
/** @description Display name of the author. */
|
|
107
107
|
name: string;
|
|
108
108
|
/** @description URL-friendly slug for the author. */
|
|
@@ -132,14 +132,14 @@ interface components {
|
|
|
132
132
|
/** @description Time at which the author was last updated, or `null` if it has never been updated. ISO 8601 datetime. */
|
|
133
133
|
updatedAt: string | null;
|
|
134
134
|
};
|
|
135
|
-
BlogPost: components[
|
|
135
|
+
BlogPost: components["schemas"]["BlogPostSummary"] & {
|
|
136
136
|
html: string | null;
|
|
137
137
|
};
|
|
138
138
|
BlogPostSummary: {
|
|
139
139
|
/** @description Unique identifier for the object. Use this value as the `{id}` path parameter for the blog-post endpoints (e.g. `GET /v1/blog/posts/{id}`). */
|
|
140
140
|
id: string;
|
|
141
141
|
/** @enum {string} */
|
|
142
|
-
object:
|
|
142
|
+
object: "blog_post";
|
|
143
143
|
title: string;
|
|
144
144
|
slug: string;
|
|
145
145
|
status: string;
|
|
@@ -166,20 +166,20 @@ interface components {
|
|
|
166
166
|
operations: ({
|
|
167
167
|
id: string;
|
|
168
168
|
/** @enum {string} */
|
|
169
|
-
method:
|
|
169
|
+
method: "POST";
|
|
170
170
|
body?: unknown;
|
|
171
171
|
action?: string;
|
|
172
172
|
resourceId?: string;
|
|
173
173
|
} | {
|
|
174
174
|
id: string;
|
|
175
175
|
/** @enum {string} */
|
|
176
|
-
method:
|
|
176
|
+
method: "PATCH";
|
|
177
177
|
body?: unknown;
|
|
178
178
|
resourceId: string;
|
|
179
179
|
} | {
|
|
180
180
|
id: string;
|
|
181
181
|
/** @enum {string} */
|
|
182
|
-
method:
|
|
182
|
+
method: "DELETE";
|
|
183
183
|
resourceId: string;
|
|
184
184
|
})[];
|
|
185
185
|
};
|
|
@@ -190,7 +190,7 @@ interface components {
|
|
|
190
190
|
* @description String representing the object's type. Objects of the same type share the same value.
|
|
191
191
|
* @enum {string}
|
|
192
192
|
*/
|
|
193
|
-
object:
|
|
193
|
+
object: "blog_tag";
|
|
194
194
|
/** @description Display name of the tag. */
|
|
195
195
|
name: string;
|
|
196
196
|
/** @description URL-friendly slug for the tag. */
|
|
@@ -210,10 +210,13 @@ interface components {
|
|
|
210
210
|
};
|
|
211
211
|
BoardAccessGrant: {
|
|
212
212
|
/** @enum {string} */
|
|
213
|
-
object:
|
|
213
|
+
object: "board_access_grant";
|
|
214
214
|
/** @description The board-access grant. Send it as the `X-Board-Access` header on subsequent content reads to pass the password wall. */
|
|
215
215
|
token: string;
|
|
216
216
|
};
|
|
217
|
+
BoardAuthConsumeMagicLinkBody: {
|
|
218
|
+
token: string;
|
|
219
|
+
};
|
|
217
220
|
BoardAuthForgotPasswordBody: {
|
|
218
221
|
/** Format: email */
|
|
219
222
|
email: string;
|
|
@@ -226,6 +229,17 @@ interface components {
|
|
|
226
229
|
BoardAuthLogoutBody: {
|
|
227
230
|
refreshToken: string;
|
|
228
231
|
};
|
|
232
|
+
BoardAuthOAuthAuthorizationUrl: {
|
|
233
|
+
/** @enum {string} */
|
|
234
|
+
object: "oauth_authorization_url";
|
|
235
|
+
/** @enum {string} */
|
|
236
|
+
provider: "google" | "linkedin";
|
|
237
|
+
/** Format: uri */
|
|
238
|
+
authorizeUrl: string;
|
|
239
|
+
};
|
|
240
|
+
BoardAuthOAuthExchangeBody: {
|
|
241
|
+
token: string;
|
|
242
|
+
};
|
|
229
243
|
BoardAuthRefreshBody: {
|
|
230
244
|
refreshToken: string;
|
|
231
245
|
};
|
|
@@ -234,18 +248,24 @@ interface components {
|
|
|
234
248
|
* @description Which role profile to create on the board.
|
|
235
249
|
* @enum {string}
|
|
236
250
|
*/
|
|
237
|
-
role:
|
|
251
|
+
role: "candidate" | "employer";
|
|
238
252
|
/**
|
|
239
253
|
* @description Registration method. Only `emailpass` is supported.
|
|
240
254
|
* @enum {string}
|
|
241
255
|
*/
|
|
242
|
-
method:
|
|
256
|
+
method: "emailpass";
|
|
243
257
|
/** Format: email */
|
|
244
258
|
email: string;
|
|
245
259
|
/** @description Minimum 8 characters. */
|
|
246
260
|
password: string;
|
|
247
261
|
displayName: string;
|
|
248
262
|
};
|
|
263
|
+
BoardAuthRequestMagicLinkBody: {
|
|
264
|
+
/** Format: email */
|
|
265
|
+
email: string;
|
|
266
|
+
/** @description Optional same-origin path to carry through the email link. */
|
|
267
|
+
returnTo?: string;
|
|
268
|
+
};
|
|
249
269
|
BoardAuthResetPasswordBody: {
|
|
250
270
|
token: string;
|
|
251
271
|
/** @description Minimum 8 characters. */
|
|
@@ -253,21 +273,21 @@ interface components {
|
|
|
253
273
|
};
|
|
254
274
|
BoardAuthSession: {
|
|
255
275
|
/** @enum {string} */
|
|
256
|
-
object:
|
|
276
|
+
object: "board_auth_session";
|
|
257
277
|
/** @description Short-lived JWT (1 hour). Send as `Authorization: Bearer`. */
|
|
258
278
|
accessToken: string;
|
|
259
279
|
/** @description Opaque single-use refresh token (30 days). Each refresh returns a replacement; a reused token is rejected. */
|
|
260
280
|
refreshToken: string;
|
|
261
281
|
/** @description Access-token expiry, epoch milliseconds. */
|
|
262
282
|
expiresAt: number;
|
|
263
|
-
boardUser: components[
|
|
283
|
+
boardUser: components["schemas"]["BoardUser"];
|
|
264
284
|
};
|
|
265
285
|
BoardAuthVerifyEmailBody: {
|
|
266
286
|
token: string;
|
|
267
287
|
};
|
|
268
288
|
BoardSeo: {
|
|
269
289
|
/** @enum {string} */
|
|
270
|
-
object:
|
|
290
|
+
object: "board_seo";
|
|
271
291
|
/** @description Verbatim `ads.txt` content, or `null` when not configured. */
|
|
272
292
|
adsTxt: string | null;
|
|
273
293
|
/** @description IndexNow key-file content, or `null` when not configured. */
|
|
@@ -298,36 +318,103 @@ interface components {
|
|
|
298
318
|
/** @description Board user ID. */
|
|
299
319
|
id: string;
|
|
300
320
|
/** @enum {string} */
|
|
301
|
-
object:
|
|
321
|
+
object: "board_user";
|
|
302
322
|
/** @enum {string} */
|
|
303
|
-
role:
|
|
323
|
+
role: "candidate" | "employer";
|
|
304
324
|
email: string;
|
|
305
325
|
displayName: string | null;
|
|
306
326
|
emailVerified: boolean;
|
|
307
327
|
};
|
|
328
|
+
CandidateAvatar: {
|
|
329
|
+
/** @enum {string} */
|
|
330
|
+
object: "candidate_avatar";
|
|
331
|
+
avatarUrl: string | null;
|
|
332
|
+
};
|
|
333
|
+
CandidateEducation: {
|
|
334
|
+
id: string;
|
|
335
|
+
/** @enum {string} */
|
|
336
|
+
object: "candidate_education";
|
|
337
|
+
institutionName: string;
|
|
338
|
+
institutionUrl: string | null;
|
|
339
|
+
degree: string | null;
|
|
340
|
+
fieldOfStudy: string | null;
|
|
341
|
+
grade: string | null;
|
|
342
|
+
activitiesAndSocieties: string | null;
|
|
343
|
+
startDate: string | null;
|
|
344
|
+
endDate: string | null;
|
|
345
|
+
description: string | null;
|
|
346
|
+
sortOrder: number;
|
|
347
|
+
};
|
|
348
|
+
CandidateExperience: {
|
|
349
|
+
id: string;
|
|
350
|
+
/** @enum {string} */
|
|
351
|
+
object: "candidate_experience";
|
|
352
|
+
title: string;
|
|
353
|
+
companyName: string;
|
|
354
|
+
companyUrl: string | null;
|
|
355
|
+
location: string | null;
|
|
356
|
+
employmentType: string | null;
|
|
357
|
+
locationType: string | null;
|
|
358
|
+
foundVia: string | null;
|
|
359
|
+
startDate: string;
|
|
360
|
+
endDate: string | null;
|
|
361
|
+
description: string | null;
|
|
362
|
+
sortOrder: number;
|
|
363
|
+
experienceSkills: string[];
|
|
364
|
+
};
|
|
365
|
+
CandidateLanguage: {
|
|
366
|
+
/** @enum {string} */
|
|
367
|
+
object: "candidate_language";
|
|
368
|
+
name: string;
|
|
369
|
+
proficiency: string;
|
|
370
|
+
};
|
|
371
|
+
CandidateProfile: {
|
|
372
|
+
id: string;
|
|
373
|
+
/** @enum {string} */
|
|
374
|
+
object: "candidate_profile";
|
|
375
|
+
displayName: string | null;
|
|
376
|
+
bio: string | null;
|
|
377
|
+
avatarUrl: string | null;
|
|
378
|
+
handle: string | null;
|
|
379
|
+
headline: string | null;
|
|
380
|
+
location: string | null;
|
|
381
|
+
/** @enum {string} */
|
|
382
|
+
profileVisibility: "hidden" | "logged_in_only" | "public";
|
|
383
|
+
/** @enum {string} */
|
|
384
|
+
jobSearchStatus: "actively_looking" | "open_to_offers" | "not_looking";
|
|
385
|
+
/** @enum {string} */
|
|
386
|
+
jobSearchStatusVisibleTo: "everyone" | "employers_only";
|
|
387
|
+
openToRelocate: boolean;
|
|
388
|
+
};
|
|
389
|
+
CandidateSkill: {
|
|
390
|
+
/** @enum {string} */
|
|
391
|
+
object: "candidate_skill";
|
|
392
|
+
name: string;
|
|
393
|
+
jobSkillId: string | null;
|
|
394
|
+
};
|
|
308
395
|
CompaniesBatchRequest: {
|
|
309
396
|
/** @description Array of sub-operations to execute. Each entry runs independently and reports its result on the corresponding entry of the response `data` array. Sub-operation `id` values must be unique within the batch. Up to 100 entries. */
|
|
310
397
|
operations: ({
|
|
311
398
|
id: string;
|
|
312
399
|
/** @enum {string} */
|
|
313
|
-
method:
|
|
400
|
+
method: "POST";
|
|
314
401
|
body?: unknown;
|
|
315
402
|
action?: string;
|
|
316
403
|
resourceId?: string;
|
|
317
404
|
} | {
|
|
318
405
|
id: string;
|
|
319
406
|
/** @enum {string} */
|
|
320
|
-
method:
|
|
407
|
+
method: "PATCH";
|
|
321
408
|
body?: unknown;
|
|
322
409
|
resourceId: string;
|
|
323
410
|
} | {
|
|
324
411
|
id: string;
|
|
325
412
|
/** @enum {string} */
|
|
326
|
-
method:
|
|
413
|
+
method: "DELETE";
|
|
327
414
|
resourceId: string;
|
|
328
415
|
})[];
|
|
329
416
|
};
|
|
330
|
-
Company: components[
|
|
417
|
+
Company: components["schemas"]["CompanySummary"] & {
|
|
331
418
|
/** @description Long-form description of the company, or `null` if not set. */
|
|
332
419
|
description: string | null;
|
|
333
420
|
/** @description Whether automated backfill of jobs from this company is supported, or `null` if not yet evaluated. */
|
|
@@ -339,7 +426,7 @@ interface components {
|
|
|
339
426
|
};
|
|
340
427
|
CompanyCategorySalary: {
|
|
341
428
|
/** @enum {string} */
|
|
342
|
-
object:
|
|
429
|
+
object: "company_category_salary";
|
|
343
430
|
categorySourceSlug: string;
|
|
344
431
|
categoryCanonicalSlug: string;
|
|
345
432
|
companyName: string;
|
|
@@ -383,7 +470,7 @@ interface components {
|
|
|
383
470
|
};
|
|
384
471
|
CompanyMarket: {
|
|
385
472
|
/** @enum {string} */
|
|
386
|
-
object:
|
|
473
|
+
object: "company_market";
|
|
387
474
|
slug: string;
|
|
388
475
|
name: string;
|
|
389
476
|
/** @description Number of companies on the board in this market. */
|
|
@@ -402,7 +489,7 @@ interface components {
|
|
|
402
489
|
* @description String representing the object's type. Objects of the same type share the same value.
|
|
403
490
|
* @enum {string}
|
|
404
491
|
*/
|
|
405
|
-
object:
|
|
492
|
+
object: "public_company";
|
|
406
493
|
/** @description Display name of the company. */
|
|
407
494
|
name: string;
|
|
408
495
|
/** @description URL-friendly slug for the company. */
|
|
@@ -417,15 +504,15 @@ interface components {
|
|
|
417
504
|
jobCount: number;
|
|
418
505
|
/** @description Number of currently-published, non-expired jobs at this company. */
|
|
419
506
|
publishedJobCount: number;
|
|
420
|
-
links: components[
|
|
507
|
+
links: components["schemas"]["PublicCompanyLinks"];
|
|
421
508
|
};
|
|
422
|
-
CompanyPublicDetail: components[
|
|
509
|
+
CompanyPublicDetail: components["schemas"]["CompanyPublic"] & {
|
|
423
510
|
/** @description Markets (sectors) this company operates in, each with its source slug. Empty when the company has no markets. */
|
|
424
|
-
markets: components[
|
|
511
|
+
markets: components["schemas"]["CompanyMarketRef"][];
|
|
425
512
|
};
|
|
426
513
|
CompanySalary: {
|
|
427
514
|
/** @enum {string} */
|
|
428
|
-
object:
|
|
515
|
+
object: "company_salary";
|
|
429
516
|
companyName: string;
|
|
430
517
|
companySlug: string;
|
|
431
518
|
companyLogoPath: string | null;
|
|
@@ -490,7 +577,7 @@ interface components {
|
|
|
490
577
|
* @description String representing the object's type. Objects of the same type share the same value.
|
|
491
578
|
* @enum {string}
|
|
492
579
|
*/
|
|
493
|
-
object:
|
|
580
|
+
object: "company";
|
|
494
581
|
/** @description Display name of the company. */
|
|
495
582
|
name: string;
|
|
496
583
|
/** @description URL-friendly slug for the company. */
|
|
@@ -512,7 +599,7 @@ interface components {
|
|
|
512
599
|
/** @description Time at which the company was last updated, or `null` if it has never been updated. ISO 8601 datetime. */
|
|
513
600
|
updatedAt: string | null;
|
|
514
601
|
/** @description Public + admin URLs for this company. `public` may be `null` if the company lacks a slug. */
|
|
515
|
-
links: components[
|
|
602
|
+
links: components["schemas"]["ResourceLinks"] & {
|
|
516
603
|
/**
|
|
517
604
|
* Format: uri
|
|
518
605
|
* @description Canonical public URL for this company on the board, or `null` when no slug is set.
|
|
@@ -534,7 +621,7 @@ interface components {
|
|
|
534
621
|
* @description Author visibility status. One of `active` or `inactive`.
|
|
535
622
|
* @enum {string}
|
|
536
623
|
*/
|
|
537
|
-
status?:
|
|
624
|
+
status?: "active" | "inactive";
|
|
538
625
|
/** @description Storage ID of an uploaded avatar image (from `POST /v1/media/upload`). Pass `null` to clear an existing avatar. */
|
|
539
626
|
avatarStorageId?: string | null;
|
|
540
627
|
/** @description The author's personal website URL. Normalized to a canonical URL when stored. */
|
|
@@ -572,7 +659,7 @@ interface components {
|
|
|
572
659
|
publishedAt?: string;
|
|
573
660
|
title: string;
|
|
574
661
|
/** @enum {string} */
|
|
575
|
-
status?:
|
|
662
|
+
status?: "draft" | "scheduled" | "published";
|
|
576
663
|
};
|
|
577
664
|
CreateCompanyBody: {
|
|
578
665
|
/** @description Public company website URL. Normalized to a canonical apex domain when stored. */
|
|
@@ -592,6 +679,31 @@ interface components {
|
|
|
592
679
|
/** @description URL-friendly slug for the company. Auto-generated from `name` when omitted. */
|
|
593
680
|
slug?: string;
|
|
594
681
|
};
|
|
682
|
+
CreateEducationBody: {
|
|
683
|
+
institutionName: string;
|
|
684
|
+
institutionUrl?: string;
|
|
685
|
+
degree?: string;
|
|
686
|
+
fieldOfStudy?: string;
|
|
687
|
+
grade?: string;
|
|
688
|
+
activitiesAndSocieties?: string;
|
|
689
|
+
startDate?: string;
|
|
690
|
+
endDate?: string;
|
|
691
|
+
description?: string;
|
|
692
|
+
sortOrder?: number;
|
|
693
|
+
};
|
|
694
|
+
CreateExperienceBody: {
|
|
695
|
+
title: string;
|
|
696
|
+
companyName: string;
|
|
697
|
+
startDate: string;
|
|
698
|
+
companyUrl?: string;
|
|
699
|
+
location?: string;
|
|
700
|
+
employmentType?: string;
|
|
701
|
+
locationType?: string;
|
|
702
|
+
foundVia?: string;
|
|
703
|
+
endDate?: string;
|
|
704
|
+
description?: string;
|
|
705
|
+
sortOrder?: number;
|
|
706
|
+
};
|
|
595
707
|
CreateJobBody: {
|
|
596
708
|
/** @description The ID of an existing company. Provide either `companyId` or `company`, not both. */
|
|
597
709
|
companyId?: string;
|
|
@@ -603,22 +715,22 @@ interface components {
|
|
|
603
715
|
* @description Employment type of the role.
|
|
604
716
|
* @enum {string}
|
|
605
717
|
*/
|
|
606
|
-
employmentType?:
|
|
718
|
+
employmentType?: "full_time" | "part_time" | "contract" | "internship" | "temporary" | "volunteer" | "other";
|
|
607
719
|
/**
|
|
608
720
|
* @description Whether the role is on-site, hybrid, or fully remote.
|
|
609
721
|
* @enum {string}
|
|
610
722
|
*/
|
|
611
|
-
remoteOption?:
|
|
723
|
+
remoteOption?: "on_site" | "hybrid" | "remote";
|
|
612
724
|
/** @description Where remote candidates must hold work authorization. Each entry is the smallest relevant scope: `worldwide`, a `world_region` (EMEA / LATAM / NA / APAC), a `continent`, a `region`, a `subregion`, a `custom` group (e.g. `EU`), a `country` (ISO 3166-1 alpha-2), or a `subdivision` (ISO 3166-2). Subdivisions auto-imply their parent country in the derived `remoteWorkPermitCountryCodes` output. Worldwide is mutually exclusive with all other entries. The canonical `{type, value}` set is published at `GET /v1/taxonomies/remote-permits`. Pass `[]` to clear an existing constraint. */
|
|
613
725
|
remotePermits?: {
|
|
614
726
|
/** @enum {string} */
|
|
615
|
-
type:
|
|
727
|
+
type: "worldwide" | "world_region" | "continent" | "region" | "subregion" | "subdivision" | "country" | "custom";
|
|
616
728
|
value: string;
|
|
617
729
|
}[];
|
|
618
730
|
/** @description Where remote candidates must be timezone-compatible. Each entry mirrors the `remotePermits` shape (`world_region`, `continent`, `region`, `subregion`, `country`) plus `timezone` (specific IANA name with optional `plusMinus` ±N hours expansion) and `all` (every timezone — equivalent of `worldwide` for permits). The canonical `{type, value}` set is published at `GET /v1/taxonomies/remote-timezones`. **When omitted on POST**, the server auto-derives this from `remotePermits` (or `[{all,all}]` if neither was provided). **PATCH never auto-re-derives** — once set, only an explicit replacement updates the stored value, even when `remotePermits` changes. Pass `[]` to clear an existing constraint. */
|
|
619
731
|
remoteTimezones?: {
|
|
620
732
|
/** @enum {string} */
|
|
621
|
-
type:
|
|
733
|
+
type: "all" | "world_region" | "continent" | "region" | "subregion" | "country" | "timezone";
|
|
622
734
|
value: string;
|
|
623
735
|
plusMinus?: number;
|
|
624
736
|
}[];
|
|
@@ -626,12 +738,12 @@ interface components {
|
|
|
626
738
|
* @description Whether the employer sponsors visas for remote candidates. One of `yes`, `no`, or `unknown`.
|
|
627
739
|
* @enum {string}
|
|
628
740
|
*/
|
|
629
|
-
remoteSponsorship?:
|
|
741
|
+
remoteSponsorship?: "yes" | "no" | "unknown";
|
|
630
742
|
/**
|
|
631
743
|
* @description Seniority level of the role.
|
|
632
744
|
* @enum {string}
|
|
633
745
|
*/
|
|
634
|
-
seniority?:
|
|
746
|
+
seniority?: "entry_level" | "associate" | "mid_level" | "senior" | "lead" | "principal" | "director" | "executive";
|
|
635
747
|
/** @description Where candidates apply. Accepts an HTTPS URL, a `mailto:` URI, or a bare email address (which is normalized to `mailto:` form). */
|
|
636
748
|
applicationUrl: string;
|
|
637
749
|
/** @description Minimum salary, in `salaryCurrency` units. */
|
|
@@ -644,7 +756,7 @@ interface components {
|
|
|
644
756
|
* @description Period the `salaryMin` and `salaryMax` figures are quoted against.
|
|
645
757
|
* @enum {string}
|
|
646
758
|
*/
|
|
647
|
-
salaryTimeframe?:
|
|
759
|
+
salaryTimeframe?: "per_year" | "per_month" | "per_week" | "per_day" | "per_hour";
|
|
648
760
|
/** @description Whether the job appears in featured slots on the public board. */
|
|
649
761
|
isFeatured?: boolean;
|
|
650
762
|
/** @description Job expiry as a Unix epoch in milliseconds. On create, omitted or `null` defaults to 30 days from creation. On PATCH, pass `null` to clear an existing expiry. Past timestamps remove the job from the public board. */
|
|
@@ -652,7 +764,7 @@ interface components {
|
|
|
652
764
|
/** @description Time at which the job was first published, as a Unix epoch in milliseconds. When omitted on create with `status: "published"`, the server stamps the current time. Useful for bulk-importing historical jobs while preserving original publication dates. PATCH may overwrite an existing value but cannot clear it. */
|
|
653
765
|
publishedAt?: number;
|
|
654
766
|
/** @description Required education credentials. Each value is one of `high_school`, `associate_degree`, `bachelor_degree`, `professional_certificate`, `postgraduate_degree`, or `no_requirements`. */
|
|
655
|
-
educationRequirements?: (
|
|
767
|
+
educationRequirements?: ("high_school" | "associate_degree" | "bachelor_degree" | "professional_certificate" | "postgraduate_degree" | "no_requirements")[];
|
|
656
768
|
/** @description Minimum required experience, expressed in months. */
|
|
657
769
|
experienceMonths?: number;
|
|
658
770
|
/** @description If `true`, equivalent experience may substitute for the listed education requirements. */
|
|
@@ -661,11 +773,11 @@ interface components {
|
|
|
661
773
|
* @description Period denominator for `inOfficeFrequency`.
|
|
662
774
|
* @enum {string}
|
|
663
775
|
*/
|
|
664
|
-
inOfficePeriod?:
|
|
776
|
+
inOfficePeriod?: "per_week" | "per_month" | "per_year";
|
|
665
777
|
/** @description How often the candidate must be in-office over `inOfficePeriod`. */
|
|
666
778
|
inOfficeFrequency?: number;
|
|
667
779
|
/** @description Physical office locations associated with the job. Each entry is forward-geocoded server-side; a country mismatch returns `400 jobs_unresolvable_location`. */
|
|
668
|
-
officeLocations?: components[
|
|
780
|
+
officeLocations?: components["schemas"]["JobOfficeLocationInput"][];
|
|
669
781
|
/** @description An external identifier for the job from your own system, such as an ATS requisition ID. Use this value to look up the job later via `GET /v1/jobs?externalId=...` for deduplication. Scoped per-account: two different accounts may reuse the same `externalId` without collision. Up to 255 characters. */
|
|
670
782
|
externalId?: string;
|
|
671
783
|
/** @description Board-defined custom-field values, keyed by the field `key` (definitions, including type and option keys, are published at `GET /v1/settings/job-form`). Writes are **additive**: on `PATCH` a key you send is set/overwritten and a key you omit is preserved (unsent keys are never cleared); on `POST` this initializes the bag. Send a key with an intentional-empty value — `null`, `""`, or `[]` — to **clear** it (`""`/`null` clear any type; `[]` clears a `multi_select`); `false` and `0` are kept as real values. Values must match the field type and `single_select`/`multi_select` must use defined option **keys** (not labels); a wrong-typed value is rejected (`custom_field_wrong_type`), never silently cleared. Unknown keys are ignored. The stored bag never contains `null`/empty values. */
|
|
@@ -674,12 +786,12 @@ interface components {
|
|
|
674
786
|
};
|
|
675
787
|
/** @description The job title. */
|
|
676
788
|
title: string;
|
|
677
|
-
company?: components[
|
|
789
|
+
company?: components["schemas"]["InlineCompanyInput"];
|
|
678
790
|
/**
|
|
679
791
|
* @description Initial status of the job. Defaults to `draft`. Only `draft` and `published` are writable here. The system-set values `expired` and `archived` are not — use the dedicated transitions (`POST /v1/jobs/:id/publish`, `/pause`, `/expire`) for status changes after create.
|
|
680
792
|
* @enum {string}
|
|
681
793
|
*/
|
|
682
|
-
status?:
|
|
794
|
+
status?: "draft" | "published";
|
|
683
795
|
};
|
|
684
796
|
CreateJobPostingBody: {
|
|
685
797
|
submission: {
|
|
@@ -693,7 +805,7 @@ interface components {
|
|
|
693
805
|
remoteOption: string;
|
|
694
806
|
officeLocations: {
|
|
695
807
|
/** @enum {string} */
|
|
696
|
-
provider?:
|
|
808
|
+
provider?: "mapbox";
|
|
697
809
|
providerPlaceId?: string;
|
|
698
810
|
displayName: string;
|
|
699
811
|
countryCode?: string;
|
|
@@ -736,7 +848,7 @@ interface components {
|
|
|
736
848
|
offset?: number;
|
|
737
849
|
}[];
|
|
738
850
|
/** @enum {string} */
|
|
739
|
-
remoteSponsorship?:
|
|
851
|
+
remoteSponsorship?: "yes" | "no" | "unknown";
|
|
740
852
|
customFieldValues?: {
|
|
741
853
|
[key: string]: string | string[] | boolean | number;
|
|
742
854
|
};
|
|
@@ -774,7 +886,7 @@ interface components {
|
|
|
774
886
|
* @description Tag visibility. One of `public` or `internal`.
|
|
775
887
|
* @enum {string}
|
|
776
888
|
*/
|
|
777
|
-
visibility?:
|
|
889
|
+
visibility?: "public" | "internal";
|
|
778
890
|
/** @description SEO meta title for the tag page. */
|
|
779
891
|
metaTitle?: string;
|
|
780
892
|
/** @description SEO meta description for the tag page. */
|
|
@@ -791,9 +903,9 @@ interface components {
|
|
|
791
903
|
* @description Field type, which dictates the accepted value: `short_text`/`long_text` → string; `single_select` → one option key (string); `multi_select` → array of option keys; `boolean` → boolean; `number` → number.
|
|
792
904
|
* @enum {string}
|
|
793
905
|
*/
|
|
794
|
-
type:
|
|
906
|
+
type: "short_text" | "long_text" | "single_select" | "multi_select" | "boolean" | "number";
|
|
795
907
|
/** @description Present only for `single_select`/`multi_select`. A written value must be one (or, for multi, several) of these option `key`s — never a label. */
|
|
796
|
-
options?: components[
|
|
908
|
+
options?: components["schemas"]["CustomFieldOption"][];
|
|
797
909
|
/** @description When true, the value cannot be cleared or left empty on a write (rejected with `custom_field_required`). */
|
|
798
910
|
required: boolean;
|
|
799
911
|
/** @description Inclusive minimum for `number` fields, when set. */
|
|
@@ -819,7 +931,7 @@ interface components {
|
|
|
819
931
|
* @description OAuth token endpoint authentication method. Use `none` for public PKCE clients that cannot keep a client secret.
|
|
820
932
|
* @enum {string}
|
|
821
933
|
*/
|
|
822
|
-
token_endpoint_auth_method?:
|
|
934
|
+
token_endpoint_auth_method?: "client_secret_basic" | "none";
|
|
823
935
|
};
|
|
824
936
|
DynamicClientRegistrationResponse: {
|
|
825
937
|
/** @description Public OAuth client identifier. */
|
|
@@ -855,6 +967,12 @@ interface components {
|
|
|
855
967
|
/** @description If `true` (default), creates a new company when no match is found. Set to `false` to receive a `404 companies_not_found` response instead. */
|
|
856
968
|
createIfMissing?: boolean;
|
|
857
969
|
};
|
|
970
|
+
HandleAvailability: {
|
|
971
|
+
/** @enum {string} */
|
|
972
|
+
object: "handle_availability";
|
|
973
|
+
handle: string;
|
|
974
|
+
available: boolean;
|
|
975
|
+
};
|
|
858
976
|
/** @description An inline company payload, resolved via `find-or-create` before the job is created. Provide either `company` or `companyId`, not both. */
|
|
859
977
|
InlineCompanyInput: {
|
|
860
978
|
/** @description The company's display name. */
|
|
@@ -868,9 +986,9 @@ interface components {
|
|
|
868
986
|
/** @description If `true` (default), creates a new company when no match is found. Set to `false` to receive a `404 companies_not_found` response instead. */
|
|
869
987
|
createIfMissing?: boolean;
|
|
870
988
|
};
|
|
871
|
-
Job: components[
|
|
989
|
+
Job: components["schemas"]["JobSummary"] & {
|
|
872
990
|
/** @description Public + admin URLs for this job. `public` may be `null` if the job lacks a slug or company-slug. */
|
|
873
|
-
links?: components[
|
|
991
|
+
links?: components["schemas"]["ResourceLinks"] & {
|
|
874
992
|
/**
|
|
875
993
|
* Format: uri
|
|
876
994
|
* @description Canonical public URL for this job, or `null` when the job has no slug or no associated company slug (so a stable URL cannot be assembled).
|
|
@@ -904,9 +1022,9 @@ interface components {
|
|
|
904
1022
|
* @description Whether the employer sponsors visas for remote candidates. One of `yes`, `no`, or `unknown`.
|
|
905
1023
|
* @enum {string}
|
|
906
1024
|
*/
|
|
907
|
-
remoteSponsorship:
|
|
1025
|
+
remoteSponsorship: "yes" | "no" | "unknown";
|
|
908
1026
|
/** @description Required education credentials. Each value is one of `high_school`, `associate_degree`, `bachelor_degree`, `professional_certificate`, `postgraduate_degree`, or `no_requirements`. */
|
|
909
|
-
educationRequirements: (
|
|
1027
|
+
educationRequirements: ("high_school" | "associate_degree" | "bachelor_degree" | "professional_certificate" | "postgraduate_degree" | "no_requirements")[];
|
|
910
1028
|
/** @description Minimum required experience in months, or `null` if not specified. */
|
|
911
1029
|
experienceMonths: number | null;
|
|
912
1030
|
/** @description If `true`, equivalent experience may substitute for the listed education requirements. `null` if not specified. */
|
|
@@ -915,12 +1033,12 @@ interface components {
|
|
|
915
1033
|
* @description Period denominator for `inOfficeFrequency`, or `null` if not specified.
|
|
916
1034
|
* @enum {string|null}
|
|
917
1035
|
*/
|
|
918
|
-
inOfficePeriod:
|
|
1036
|
+
inOfficePeriod: "per_week" | "per_month" | "per_year" | null;
|
|
919
1037
|
/** @description How often the candidate must be in-office over `inOfficePeriod`, or `null` if not specified. */
|
|
920
1038
|
inOfficeFrequency: number | null;
|
|
921
|
-
company: components[
|
|
1039
|
+
company: components["schemas"]["JobCompany"];
|
|
922
1040
|
/** @description Physical office locations associated with the job. */
|
|
923
|
-
officeLocations: components[
|
|
1041
|
+
officeLocations: components["schemas"]["JobOfficeLocation"][];
|
|
924
1042
|
};
|
|
925
1043
|
/** @description Embedded company resource for the job, or `null` if no company is attached. */
|
|
926
1044
|
JobCompany: {
|
|
@@ -962,7 +1080,7 @@ interface components {
|
|
|
962
1080
|
allowedCountries?: string[];
|
|
963
1081
|
};
|
|
964
1082
|
/** @description Board-defined custom field definitions, in display order. Read these to learn which `customFieldValues` keys, types, and option keys a job accepts on POST/PATCH /v1/jobs. */
|
|
965
|
-
customFields?: components[
|
|
1083
|
+
customFields?: components["schemas"]["CustomFieldDefinition"][];
|
|
966
1084
|
};
|
|
967
1085
|
JobOfficeLocation: {
|
|
968
1086
|
/** @description ISO 3166-1 alpha-2 country code, or `null` if the location was not resolved. */
|
|
@@ -997,12 +1115,12 @@ interface components {
|
|
|
997
1115
|
};
|
|
998
1116
|
JobPostingBillingCheck: {
|
|
999
1117
|
/** @enum {string} */
|
|
1000
|
-
object:
|
|
1118
|
+
object: "job_posting_billing_check";
|
|
1001
1119
|
hasActiveBilling: boolean;
|
|
1002
1120
|
};
|
|
1003
1121
|
JobPostingBillingOptions: {
|
|
1004
1122
|
/** @enum {string} */
|
|
1005
|
-
object:
|
|
1123
|
+
object: "job_posting_billing_options";
|
|
1006
1124
|
options: {
|
|
1007
1125
|
id: string;
|
|
1008
1126
|
type: string;
|
|
@@ -1027,7 +1145,7 @@ interface components {
|
|
|
1027
1145
|
};
|
|
1028
1146
|
JobPostingBillingVerification: {
|
|
1029
1147
|
/** @enum {string} */
|
|
1030
|
-
object:
|
|
1148
|
+
object: "job_posting_billing_verification";
|
|
1031
1149
|
success: boolean;
|
|
1032
1150
|
};
|
|
1033
1151
|
JobPostingCheckBillingBody: {
|
|
@@ -1036,25 +1154,25 @@ interface components {
|
|
|
1036
1154
|
};
|
|
1037
1155
|
JobPostingLogo: {
|
|
1038
1156
|
/** @enum {string} */
|
|
1039
|
-
object:
|
|
1157
|
+
object: "job_posting_logo";
|
|
1040
1158
|
publicUrl: string;
|
|
1041
1159
|
};
|
|
1042
1160
|
JobPostingPlan: {
|
|
1043
1161
|
/** @enum {string} */
|
|
1044
|
-
object:
|
|
1162
|
+
object: "job_posting_plan";
|
|
1045
1163
|
id: string;
|
|
1046
1164
|
name: string;
|
|
1047
1165
|
description: string | null;
|
|
1048
1166
|
kind: string;
|
|
1049
1167
|
/** @enum {string|null} */
|
|
1050
|
-
billingInterval:
|
|
1168
|
+
billingInterval: "month" | "year" | null;
|
|
1051
1169
|
/** @enum {string|null} */
|
|
1052
|
-
purpose:
|
|
1170
|
+
purpose: "job_posting" | "talent_access" | null;
|
|
1053
1171
|
isRecommended: boolean;
|
|
1054
1172
|
displayOrder: number | null;
|
|
1055
1173
|
invoiceOnly: boolean;
|
|
1056
1174
|
/** @enum {string|null} */
|
|
1057
|
-
publishTiming:
|
|
1175
|
+
publishTiming: "on_issue" | "on_payment" | null;
|
|
1058
1176
|
netTermsDays: number | null;
|
|
1059
1177
|
prices: {
|
|
1060
1178
|
currency: string;
|
|
@@ -1068,29 +1186,29 @@ interface components {
|
|
|
1068
1186
|
};
|
|
1069
1187
|
JobPostingResult: {
|
|
1070
1188
|
/** @enum {string} */
|
|
1071
|
-
object:
|
|
1189
|
+
object: "job_posting_result";
|
|
1072
1190
|
/** @enum {string} */
|
|
1073
|
-
status:
|
|
1191
|
+
status: "checkout";
|
|
1074
1192
|
checkoutUrl: string;
|
|
1075
1193
|
jobId: string;
|
|
1076
1194
|
} | {
|
|
1077
1195
|
/** @enum {string} */
|
|
1078
|
-
object:
|
|
1196
|
+
object: "job_posting_result";
|
|
1079
1197
|
/** @enum {string} */
|
|
1080
|
-
status:
|
|
1198
|
+
status: "published";
|
|
1081
1199
|
jobId: string;
|
|
1082
1200
|
jobSlug: string;
|
|
1083
1201
|
} | {
|
|
1084
1202
|
/** @enum {string} */
|
|
1085
|
-
object:
|
|
1203
|
+
object: "job_posting_result";
|
|
1086
1204
|
/** @enum {string} */
|
|
1087
|
-
status:
|
|
1205
|
+
status: "pending_approval";
|
|
1088
1206
|
jobId: string;
|
|
1089
1207
|
} | {
|
|
1090
1208
|
/** @enum {string} */
|
|
1091
|
-
object:
|
|
1209
|
+
object: "job_posting_result";
|
|
1092
1210
|
/** @enum {string} */
|
|
1093
|
-
status:
|
|
1211
|
+
status: "invoice_sent";
|
|
1094
1212
|
jobId: string;
|
|
1095
1213
|
};
|
|
1096
1214
|
JobPostingSendVerificationBody: {
|
|
@@ -1099,7 +1217,7 @@ interface components {
|
|
|
1099
1217
|
};
|
|
1100
1218
|
JobPostingSubscriptionEntitlements: {
|
|
1101
1219
|
/** @enum {string} */
|
|
1102
|
-
object:
|
|
1220
|
+
object: "job_posting_subscription_entitlements";
|
|
1103
1221
|
hasSubscription: boolean;
|
|
1104
1222
|
subscriptionId: string | null;
|
|
1105
1223
|
canFeature: boolean | null;
|
|
@@ -1121,7 +1239,7 @@ interface components {
|
|
|
1121
1239
|
* @description String representing the object's type. Objects of the same type share the same value.
|
|
1122
1240
|
* @enum {string}
|
|
1123
1241
|
*/
|
|
1124
|
-
object:
|
|
1242
|
+
object: "job";
|
|
1125
1243
|
/** @description The job title. */
|
|
1126
1244
|
title: string;
|
|
1127
1245
|
/** @description URL-friendly slug used in public board URLs, or `null` if no slug is set. */
|
|
@@ -1130,24 +1248,24 @@ interface components {
|
|
|
1130
1248
|
* @description Current status of the job. One of `draft`, `published`, `expired`, or `archived`.
|
|
1131
1249
|
* @enum {string}
|
|
1132
1250
|
*/
|
|
1133
|
-
status:
|
|
1251
|
+
status: "draft" | "published" | "expired" | "archived";
|
|
1134
1252
|
/** @description Identifier of the company the job belongs to, or `null` if no company is attached. */
|
|
1135
1253
|
companyId: string | null;
|
|
1136
1254
|
/**
|
|
1137
1255
|
* @description Employment type of the role, or `null` if not specified.
|
|
1138
1256
|
* @enum {string|null}
|
|
1139
1257
|
*/
|
|
1140
|
-
employmentType:
|
|
1258
|
+
employmentType: "full_time" | "part_time" | "contract" | "internship" | "temporary" | "volunteer" | "other" | null;
|
|
1141
1259
|
/**
|
|
1142
1260
|
* @description Whether the role is on-site, hybrid, or fully remote, or `null` if not specified.
|
|
1143
1261
|
* @enum {string|null}
|
|
1144
1262
|
*/
|
|
1145
|
-
remoteOption:
|
|
1263
|
+
remoteOption: "on_site" | "hybrid" | "remote" | null;
|
|
1146
1264
|
/**
|
|
1147
1265
|
* @description Seniority level of the role, or `null` if not specified.
|
|
1148
1266
|
* @enum {string|null}
|
|
1149
1267
|
*/
|
|
1150
|
-
seniority:
|
|
1268
|
+
seniority: "entry_level" | "associate" | "mid_level" | "senior" | "lead" | "principal" | "director" | "executive" | null;
|
|
1151
1269
|
/** @description Minimum salary in `salaryCurrency` units, or `null` if not specified. */
|
|
1152
1270
|
salaryMin: number | null;
|
|
1153
1271
|
/** @description Maximum salary in `salaryCurrency` units, or `null` if not specified. */
|
|
@@ -1158,7 +1276,7 @@ interface components {
|
|
|
1158
1276
|
* @description Period the salary range is quoted against, or `null` if no salary is specified.
|
|
1159
1277
|
* @enum {string|null}
|
|
1160
1278
|
*/
|
|
1161
|
-
salaryTimeframe:
|
|
1279
|
+
salaryTimeframe: "per_year" | "per_month" | "per_week" | "per_day" | "per_hour" | null;
|
|
1162
1280
|
/** @description Whether the job appears in featured slots on the public board. */
|
|
1163
1281
|
isFeatured: boolean;
|
|
1164
1282
|
/** @description Time at which the job was first published, or `null` if not yet published. ISO 8601 datetime. */
|
|
@@ -1175,11 +1293,11 @@ interface components {
|
|
|
1175
1293
|
customFieldValues: {
|
|
1176
1294
|
[key: string]: string | string[] | boolean | number;
|
|
1177
1295
|
};
|
|
1178
|
-
links: components[
|
|
1296
|
+
links: components["schemas"]["AdminOnlyResourceLinks"];
|
|
1179
1297
|
};
|
|
1180
1298
|
LegalPage: {
|
|
1181
1299
|
/** @enum {string} */
|
|
1182
|
-
object:
|
|
1300
|
+
object: "legal_page";
|
|
1183
1301
|
/** @description The resolved legal page type. */
|
|
1184
1302
|
type: string;
|
|
1185
1303
|
/** @description Page heading (H1), with `{{board_name}}` resolved. */
|
|
@@ -1187,7 +1305,7 @@ interface components {
|
|
|
1187
1305
|
/** @description Owner-authored prose as portable HTML (transitional field, ADR-0039 — the starter authors the layout). Empty string when the page has no text body. */
|
|
1188
1306
|
content: string;
|
|
1189
1307
|
/** @enum {string} */
|
|
1190
|
-
contentFormat:
|
|
1308
|
+
contentFormat: "html";
|
|
1191
1309
|
/** @description Structured impressum legal-entity facts; `null` for non-impressum pages. */
|
|
1192
1310
|
legalEntity: {
|
|
1193
1311
|
legalName: string | null;
|
|
@@ -1196,7 +1314,7 @@ interface components {
|
|
|
1196
1314
|
};
|
|
1197
1315
|
LocationSalaryDetail: {
|
|
1198
1316
|
/** @enum {string} */
|
|
1199
|
-
object:
|
|
1317
|
+
object: "location_salary_detail";
|
|
1200
1318
|
/** @description Immutable English source place slug — the salary-stats key. */
|
|
1201
1319
|
sourceSlug: string;
|
|
1202
1320
|
/** @description Board-language canonical URL slug — the starter 308 target. */
|
|
@@ -1277,7 +1395,7 @@ interface components {
|
|
|
1277
1395
|
};
|
|
1278
1396
|
LocationSkillsIndex: {
|
|
1279
1397
|
/** @enum {string} */
|
|
1280
|
-
object:
|
|
1398
|
+
object: "location_skills_index";
|
|
1281
1399
|
sourceSlug: string;
|
|
1282
1400
|
canonicalSlug: string;
|
|
1283
1401
|
placeName: string;
|
|
@@ -1291,7 +1409,7 @@ interface components {
|
|
|
1291
1409
|
};
|
|
1292
1410
|
LocationTitlesIndex: {
|
|
1293
1411
|
/** @enum {string} */
|
|
1294
|
-
object:
|
|
1412
|
+
object: "location_titles_index";
|
|
1295
1413
|
sourceSlug: string;
|
|
1296
1414
|
canonicalSlug: string;
|
|
1297
1415
|
placeName: string;
|
|
@@ -1303,7 +1421,7 @@ interface components {
|
|
|
1303
1421
|
jobCount: number;
|
|
1304
1422
|
}[];
|
|
1305
1423
|
};
|
|
1306
|
-
MediaGet: components[
|
|
1424
|
+
MediaGet: components["schemas"]["MediaUpload"] & {
|
|
1307
1425
|
/** @description Time at which the file was uploaded. ISO 8601 datetime. */
|
|
1308
1426
|
uploadedAt: string;
|
|
1309
1427
|
/** @description Resources currently referencing this file. Currently always `[]` — the resolver is not yet implemented. */
|
|
@@ -1321,7 +1439,7 @@ interface components {
|
|
|
1321
1439
|
* @description String representing the object's type. Objects of the same type share the same value.
|
|
1322
1440
|
* @enum {string}
|
|
1323
1441
|
*/
|
|
1324
|
-
object:
|
|
1442
|
+
object: "media_upload";
|
|
1325
1443
|
/** @description URL where the file can be downloaded. Permanent for files served from the assets domain; a signed URL for legacy files. Always set on the upload response; may be `null` on retrieval if the underlying blob has been deleted. */
|
|
1326
1444
|
url: string | null;
|
|
1327
1445
|
/** @description Time at which the signed `url` expires (ISO 8601 datetime), or `null` when the `url` is permanent and never expires. */
|
|
@@ -1334,7 +1452,15 @@ interface components {
|
|
|
1334
1452
|
* @description Resource type the file was uploaded for.
|
|
1335
1453
|
* @enum {string}
|
|
1336
1454
|
*/
|
|
1337
|
-
purpose:
|
|
1455
|
+
purpose: "board_logo" | "board_hero" | "account_avatar" | "company_logo" | "blog_image";
|
|
1456
|
+
};
|
|
1457
|
+
NotificationPreference: {
|
|
1458
|
+
/** @enum {string} */
|
|
1459
|
+
object: "notification_preference";
|
|
1460
|
+
/** @enum {string} */
|
|
1461
|
+
channel: "messageEmails" | "applicationEmails";
|
|
1462
|
+
subscribed: boolean;
|
|
1463
|
+
updatedAt: number | null;
|
|
1338
1464
|
};
|
|
1339
1465
|
/** @description Error envelope, populated once the operation reaches `failed`. `null` otherwise. */
|
|
1340
1466
|
OperationErrorEnvelope: {
|
|
@@ -1365,20 +1491,20 @@ interface components {
|
|
|
1365
1491
|
* @description String representing the object's type. Objects of the same type share the same value.
|
|
1366
1492
|
* @enum {string}
|
|
1367
1493
|
*/
|
|
1368
|
-
object:
|
|
1494
|
+
object: "operation";
|
|
1369
1495
|
/** @description Operation kind, identifying which workflow the operation runs. */
|
|
1370
1496
|
kind: string;
|
|
1371
1497
|
/**
|
|
1372
1498
|
* @description Current state of the operation.
|
|
1373
1499
|
* @enum {string}
|
|
1374
1500
|
*/
|
|
1375
|
-
state:
|
|
1501
|
+
state: "pending" | "running" | "succeeded" | "failed" | "cancelled";
|
|
1376
1502
|
/** @description Identifier of the account the operation belongs to. */
|
|
1377
1503
|
accountId: string;
|
|
1378
|
-
progress: components[
|
|
1504
|
+
progress: components["schemas"]["OperationProgress"];
|
|
1379
1505
|
/** @description Operation result, populated once the operation reaches `succeeded`. Shape varies by `kind`. */
|
|
1380
1506
|
result?: unknown;
|
|
1381
|
-
error: components[
|
|
1507
|
+
error: components["schemas"]["OperationErrorEnvelope"];
|
|
1382
1508
|
/** @description Time at which the operation was created. ISO 8601 datetime. */
|
|
1383
1509
|
createdAt: string;
|
|
1384
1510
|
/** @description Time at which the operation was last updated. ISO 8601 datetime. */
|
|
@@ -1430,23 +1556,23 @@ interface components {
|
|
|
1430
1556
|
/** @description Default expiry, in days, applied to newly published jobs when no `expiresAt` is supplied. */
|
|
1431
1557
|
defaultJobDurationDays?: number;
|
|
1432
1558
|
/** @description Public contact email shown on the board. Pass `null` to clear. */
|
|
1433
|
-
contactEmail?: string |
|
|
1559
|
+
contactEmail?: string | "" | unknown | unknown;
|
|
1434
1560
|
/** @description Legal name of the entity operating the board. Pass `null` to clear. */
|
|
1435
|
-
companyLegalName?: string |
|
|
1561
|
+
companyLegalName?: string | "" | unknown | unknown;
|
|
1436
1562
|
/** @description Postal address of the entity operating the board. Pass `null` to clear. */
|
|
1437
|
-
companyAddress?: string |
|
|
1563
|
+
companyAddress?: string | "" | unknown | unknown;
|
|
1438
1564
|
/** @description Public company website URL. Pass `null` to clear. */
|
|
1439
|
-
companyWebsiteUrl?: string |
|
|
1565
|
+
companyWebsiteUrl?: string | "" | unknown | unknown;
|
|
1440
1566
|
/** @description Company X (Twitter) handle or profile URL. Pass `null` to clear. */
|
|
1441
|
-
companyXHandle?: string |
|
|
1567
|
+
companyXHandle?: string | "" | unknown | unknown;
|
|
1442
1568
|
/** @description Company Facebook page URL. Pass `null` to clear. */
|
|
1443
|
-
companyFacebookUrl?: string |
|
|
1569
|
+
companyFacebookUrl?: string | "" | unknown | unknown;
|
|
1444
1570
|
/** @description Company LinkedIn page URL. Pass `null` to clear. */
|
|
1445
|
-
companyLinkedinUrl?: string |
|
|
1571
|
+
companyLinkedinUrl?: string | "" | unknown | unknown;
|
|
1446
1572
|
/** @description Label shown for the talent directory in the public navigation. 1–50 characters. */
|
|
1447
1573
|
talentNavLabel?: string;
|
|
1448
1574
|
/** @description Custom copy displayed on the password gate. Up to 500 characters. Pass `null` to clear. */
|
|
1449
|
-
passwordProtectionMessage?: string |
|
|
1575
|
+
passwordProtectionMessage?: string | "" | unknown | unknown;
|
|
1450
1576
|
/** @description Free-form configuration object merged into the existing config. Reserved keys (e.g. `passwordProtectionEnabled`, `adsenseClientId`, `jobAccessPaywallEnabled`) cannot be set here — use the dedicated endpoints instead. */
|
|
1451
1577
|
config?: {
|
|
1452
1578
|
[key: string]: unknown;
|
|
@@ -1454,21 +1580,21 @@ interface components {
|
|
|
1454
1580
|
};
|
|
1455
1581
|
Plan: {
|
|
1456
1582
|
/** @enum {string} */
|
|
1457
|
-
object:
|
|
1583
|
+
object: "plan";
|
|
1458
1584
|
id: string;
|
|
1459
1585
|
name: string;
|
|
1460
1586
|
description: string | null;
|
|
1461
1587
|
/** @enum {string} */
|
|
1462
|
-
purpose:
|
|
1588
|
+
purpose: "job_posting" | "talent_access";
|
|
1463
1589
|
/** @enum {string} */
|
|
1464
|
-
kind:
|
|
1590
|
+
kind: "free" | "subscription" | "one_time" | "bundle";
|
|
1465
1591
|
/** @enum {string|null} */
|
|
1466
|
-
billingInterval:
|
|
1592
|
+
billingInterval: "month" | "year" | null;
|
|
1467
1593
|
isRecommended: boolean;
|
|
1468
1594
|
displayOrder: number;
|
|
1469
1595
|
invoiceOnly: boolean;
|
|
1470
1596
|
/** @enum {string|null} */
|
|
1471
|
-
publishTiming:
|
|
1597
|
+
publishTiming: "on_issue" | "on_payment" | null;
|
|
1472
1598
|
netTermsDays: number | null;
|
|
1473
1599
|
price: {
|
|
1474
1600
|
currency: string;
|
|
@@ -1481,7 +1607,7 @@ interface components {
|
|
|
1481
1607
|
maxActiveJobs: number;
|
|
1482
1608
|
featuredSlots: number;
|
|
1483
1609
|
/** @enum {string} */
|
|
1484
|
-
featureSelectionMode:
|
|
1610
|
+
featureSelectionMode: "auto" | "manual";
|
|
1485
1611
|
};
|
|
1486
1612
|
/** @description Talent-access allowances (per billing period). Present only when `purpose` is `talent_access`. `"unlimited"` is a sentinel value. */
|
|
1487
1613
|
talent?: {
|
|
@@ -1491,13 +1617,13 @@ interface components {
|
|
|
1491
1617
|
};
|
|
1492
1618
|
PublicBlogAdjacentPosts: {
|
|
1493
1619
|
/** @enum {string} */
|
|
1494
|
-
object:
|
|
1495
|
-
previous: components[
|
|
1496
|
-
next: components[
|
|
1620
|
+
object: "blog_adjacent_posts";
|
|
1621
|
+
previous: components["schemas"]["PublicBlogPostSummary"] | null;
|
|
1622
|
+
next: components["schemas"]["PublicBlogPostSummary"] | null;
|
|
1497
1623
|
};
|
|
1498
|
-
PublicBlogAuthor: components[
|
|
1624
|
+
PublicBlogAuthor: components["schemas"]["PublicBlogAuthorEmbed"] & {
|
|
1499
1625
|
/** @enum {string} */
|
|
1500
|
-
object:
|
|
1626
|
+
object: "public_blog_author";
|
|
1501
1627
|
};
|
|
1502
1628
|
PublicBlogAuthorEmbed: {
|
|
1503
1629
|
id: string;
|
|
@@ -1510,7 +1636,7 @@ interface components {
|
|
|
1510
1636
|
linkedinUrl: string | null;
|
|
1511
1637
|
githubUrl: string | null;
|
|
1512
1638
|
};
|
|
1513
|
-
PublicBlogPost: components[
|
|
1639
|
+
PublicBlogPost: components["schemas"]["PublicBlogPostSummary"] & {
|
|
1514
1640
|
html: string | null;
|
|
1515
1641
|
ogImageUrl: string | null;
|
|
1516
1642
|
featureImageCaption: string | null;
|
|
@@ -1522,7 +1648,7 @@ interface components {
|
|
|
1522
1648
|
PublicBlogPostSummary: {
|
|
1523
1649
|
id: string;
|
|
1524
1650
|
/** @enum {string} */
|
|
1525
|
-
object:
|
|
1651
|
+
object: "public_blog_post";
|
|
1526
1652
|
title: string;
|
|
1527
1653
|
slug: string;
|
|
1528
1654
|
featured: boolean;
|
|
@@ -1533,8 +1659,8 @@ interface components {
|
|
|
1533
1659
|
publishedAt: string | null;
|
|
1534
1660
|
canonicalUrl: string | null;
|
|
1535
1661
|
createdAt: string;
|
|
1536
|
-
authors: components[
|
|
1537
|
-
tags: components[
|
|
1662
|
+
authors: components["schemas"]["PublicBlogAuthorEmbed"][];
|
|
1663
|
+
tags: components["schemas"]["PublicBlogTagEmbed"][];
|
|
1538
1664
|
};
|
|
1539
1665
|
PublicBlogSearchBody: {
|
|
1540
1666
|
/** @description Free-text search query. Up to 200 characters. */
|
|
@@ -1544,9 +1670,9 @@ interface components {
|
|
|
1544
1670
|
/** @description A limit on the number of objects to be returned. Limit can range between 1 and 50. */
|
|
1545
1671
|
limit?: number;
|
|
1546
1672
|
};
|
|
1547
|
-
PublicBlogTag: components[
|
|
1673
|
+
PublicBlogTag: components["schemas"]["PublicBlogTagEmbed"] & {
|
|
1548
1674
|
/** @enum {string} */
|
|
1549
|
-
object:
|
|
1675
|
+
object: "public_blog_tag";
|
|
1550
1676
|
};
|
|
1551
1677
|
PublicBlogTagEmbed: {
|
|
1552
1678
|
id: string;
|
|
@@ -1556,7 +1682,7 @@ interface components {
|
|
|
1556
1682
|
};
|
|
1557
1683
|
PublicBoardContext: {
|
|
1558
1684
|
/** @enum {string} */
|
|
1559
|
-
object:
|
|
1685
|
+
object: "public_board";
|
|
1560
1686
|
/** @description Immutable board identifier (`boards_…`). */
|
|
1561
1687
|
id: string;
|
|
1562
1688
|
/** @description Mutable canonical board slug. */
|
|
@@ -1630,7 +1756,7 @@ interface components {
|
|
|
1630
1756
|
* @description String representing the object's type. Objects of the same type share the same value.
|
|
1631
1757
|
* @enum {string}
|
|
1632
1758
|
*/
|
|
1633
|
-
object:
|
|
1759
|
+
object: "public_job";
|
|
1634
1760
|
/** @description The job title. */
|
|
1635
1761
|
title: string;
|
|
1636
1762
|
/** @description URL-friendly slug used in public board URLs, or `null` if no slug is set. */
|
|
@@ -1639,24 +1765,24 @@ interface components {
|
|
|
1639
1765
|
* @description Current status of the job. One of `draft`, `published`, `expired`, or `archived`.
|
|
1640
1766
|
* @enum {string}
|
|
1641
1767
|
*/
|
|
1642
|
-
status:
|
|
1768
|
+
status: "draft" | "published" | "expired" | "archived";
|
|
1643
1769
|
/** @description Identifier of the company the job belongs to, or `null` if no company is attached. */
|
|
1644
1770
|
companyId: string | null;
|
|
1645
1771
|
/**
|
|
1646
1772
|
* @description Employment type of the role, or `null` if not specified.
|
|
1647
1773
|
* @enum {string|null}
|
|
1648
1774
|
*/
|
|
1649
|
-
employmentType:
|
|
1775
|
+
employmentType: "full_time" | "part_time" | "contract" | "internship" | "temporary" | "volunteer" | "other" | null;
|
|
1650
1776
|
/**
|
|
1651
1777
|
* @description Whether the role is on-site, hybrid, or fully remote, or `null` if not specified.
|
|
1652
1778
|
* @enum {string|null}
|
|
1653
1779
|
*/
|
|
1654
|
-
remoteOption:
|
|
1780
|
+
remoteOption: "on_site" | "hybrid" | "remote" | null;
|
|
1655
1781
|
/**
|
|
1656
1782
|
* @description Seniority level of the role, or `null` if not specified.
|
|
1657
1783
|
* @enum {string|null}
|
|
1658
1784
|
*/
|
|
1659
|
-
seniority:
|
|
1785
|
+
seniority: "entry_level" | "associate" | "mid_level" | "senior" | "lead" | "principal" | "director" | "executive" | null;
|
|
1660
1786
|
/** @description Minimum salary in `salaryCurrency` units, or `null` if not specified. */
|
|
1661
1787
|
salaryMin: number | null;
|
|
1662
1788
|
/** @description Maximum salary in `salaryCurrency` units, or `null` if not specified. */
|
|
@@ -1667,7 +1793,7 @@ interface components {
|
|
|
1667
1793
|
* @description Period the salary range is quoted against, or `null` if no salary is specified.
|
|
1668
1794
|
* @enum {string|null}
|
|
1669
1795
|
*/
|
|
1670
|
-
salaryTimeframe:
|
|
1796
|
+
salaryTimeframe: "per_year" | "per_month" | "per_week" | "per_day" | "per_hour" | null;
|
|
1671
1797
|
/** @description Whether the job appears in featured slots on the public board. */
|
|
1672
1798
|
isFeatured: boolean;
|
|
1673
1799
|
/** @description Time at which the job was first published, or `null` if not yet published. ISO 8601 datetime. */
|
|
@@ -1678,7 +1804,7 @@ interface components {
|
|
|
1678
1804
|
createdAt: string;
|
|
1679
1805
|
/** @description Time at which the job was last updated. ISO 8601 datetime. */
|
|
1680
1806
|
updatedAt: string;
|
|
1681
|
-
links: components[
|
|
1807
|
+
links: components["schemas"]["PublicJobLinks"];
|
|
1682
1808
|
/** @description Long-form description of the role, or `null` if not specified. */
|
|
1683
1809
|
description: string | null;
|
|
1684
1810
|
/** @description Where candidates apply, or `null` if not specified. An HTTPS URL or `mailto:` URI. */
|
|
@@ -1706,9 +1832,9 @@ interface components {
|
|
|
1706
1832
|
* @description Whether the employer sponsors visas for remote candidates. One of `yes`, `no`, or `unknown`.
|
|
1707
1833
|
* @enum {string}
|
|
1708
1834
|
*/
|
|
1709
|
-
remoteSponsorship:
|
|
1835
|
+
remoteSponsorship: "yes" | "no" | "unknown";
|
|
1710
1836
|
/** @description Required education credentials. Each value is one of `high_school`, `associate_degree`, `bachelor_degree`, `professional_certificate`, `postgraduate_degree`, or `no_requirements`. */
|
|
1711
|
-
educationRequirements: (
|
|
1837
|
+
educationRequirements: ("high_school" | "associate_degree" | "bachelor_degree" | "professional_certificate" | "postgraduate_degree" | "no_requirements")[];
|
|
1712
1838
|
/** @description Minimum required experience in months, or `null` if not specified. */
|
|
1713
1839
|
experienceMonths: number | null;
|
|
1714
1840
|
/** @description If `true`, equivalent experience may substitute for the listed education requirements. `null` if not specified. */
|
|
@@ -1717,12 +1843,12 @@ interface components {
|
|
|
1717
1843
|
* @description Period denominator for `inOfficeFrequency`, or `null` if not specified.
|
|
1718
1844
|
* @enum {string|null}
|
|
1719
1845
|
*/
|
|
1720
|
-
inOfficePeriod:
|
|
1846
|
+
inOfficePeriod: "per_week" | "per_month" | "per_year" | null;
|
|
1721
1847
|
/** @description How often the candidate must be in-office over `inOfficePeriod`, or `null` if not specified. */
|
|
1722
1848
|
inOfficeFrequency: number | null;
|
|
1723
|
-
company: components[
|
|
1849
|
+
company: components["schemas"]["JobCompany"];
|
|
1724
1850
|
/** @description Physical office locations associated with the job. */
|
|
1725
|
-
officeLocations: components[
|
|
1851
|
+
officeLocations: components["schemas"]["JobOfficeLocation"][];
|
|
1726
1852
|
/** @description Resolved job categories (slug + board display name) — same shape as the card; names joined server-side. */
|
|
1727
1853
|
categories: {
|
|
1728
1854
|
slug: string;
|
|
@@ -1741,21 +1867,21 @@ interface components {
|
|
|
1741
1867
|
};
|
|
1742
1868
|
PublicJobAlertConfirmation: {
|
|
1743
1869
|
/** @enum {string} */
|
|
1744
|
-
object:
|
|
1870
|
+
object: "job_alert_confirmation";
|
|
1745
1871
|
/**
|
|
1746
1872
|
* @description Outcome of the confirmation. Always returned with HTTP 200 so the consumer renders by status (the token may be valid, stale, or unknown).
|
|
1747
1873
|
* @enum {string}
|
|
1748
1874
|
*/
|
|
1749
|
-
status:
|
|
1875
|
+
status: "confirmed" | "already_confirmed" | "expired" | "not_found";
|
|
1750
1876
|
};
|
|
1751
1877
|
PublicJobAlertManageResult: {
|
|
1752
1878
|
/** @enum {string} */
|
|
1753
|
-
object:
|
|
1879
|
+
object: "job_alert_manage_result";
|
|
1754
1880
|
success: boolean;
|
|
1755
1881
|
};
|
|
1756
1882
|
PublicJobAlertManageState: {
|
|
1757
1883
|
/** @enum {string} */
|
|
1758
|
-
object:
|
|
1884
|
+
object: "job_alert_manage_state";
|
|
1759
1885
|
email: string;
|
|
1760
1886
|
confirmed: boolean;
|
|
1761
1887
|
unsubscribed: boolean;
|
|
@@ -1778,18 +1904,18 @@ interface components {
|
|
|
1778
1904
|
};
|
|
1779
1905
|
PublicJobAlertResend: {
|
|
1780
1906
|
/** @enum {string} */
|
|
1781
|
-
object:
|
|
1907
|
+
object: "job_alert_confirmation_resend";
|
|
1782
1908
|
/** @enum {string} */
|
|
1783
|
-
status:
|
|
1909
|
+
status: "sent" | "not_found" | "already_confirmed" | "throttled" | "send_failed";
|
|
1784
1910
|
};
|
|
1785
1911
|
PublicJobAlertSubscription: {
|
|
1786
1912
|
/** @enum {string} */
|
|
1787
|
-
object:
|
|
1913
|
+
object: "job_alert_subscription";
|
|
1788
1914
|
/**
|
|
1789
1915
|
* @description `created` on a new subscription; `duplicate` if it existed.
|
|
1790
1916
|
* @enum {string}
|
|
1791
1917
|
*/
|
|
1792
|
-
status:
|
|
1918
|
+
status: "created" | "duplicate";
|
|
1793
1919
|
/** @description True when a double-opt-in confirmation email was sent. */
|
|
1794
1920
|
requiresConfirmation: boolean;
|
|
1795
1921
|
/** @description True if the subscriber was already email-confirmed. */
|
|
@@ -1798,7 +1924,7 @@ interface components {
|
|
|
1798
1924
|
PublicJobCard: {
|
|
1799
1925
|
id: string;
|
|
1800
1926
|
/** @enum {string} */
|
|
1801
|
-
object:
|
|
1927
|
+
object: "job_card";
|
|
1802
1928
|
slug: string;
|
|
1803
1929
|
title: string;
|
|
1804
1930
|
/**
|
|
@@ -1807,9 +1933,9 @@ interface components {
|
|
|
1807
1933
|
*/
|
|
1808
1934
|
publishedAt: string | null;
|
|
1809
1935
|
/** @enum {string|null} */
|
|
1810
|
-
employmentType:
|
|
1936
|
+
employmentType: "full_time" | "part_time" | "contract" | "internship" | "temporary" | "volunteer" | "other" | null;
|
|
1811
1937
|
/** @enum {string|null} */
|
|
1812
|
-
remoteOption:
|
|
1938
|
+
remoteOption: "on_site" | "hybrid" | "remote" | null;
|
|
1813
1939
|
/** @description Display region label for remote jobs (e.g. "United States", "Worldwide"); `null` for non-remote jobs. */
|
|
1814
1940
|
remoteLocationLabel: string | null;
|
|
1815
1941
|
salaryMin: number | null;
|
|
@@ -1852,7 +1978,7 @@ interface components {
|
|
|
1852
1978
|
};
|
|
1853
1979
|
PublicPlace: {
|
|
1854
1980
|
/** @enum {string} */
|
|
1855
|
-
object:
|
|
1981
|
+
object: "place";
|
|
1856
1982
|
/** @description Stable place identity (locations-tree edge endpoint). */
|
|
1857
1983
|
id: string;
|
|
1858
1984
|
/** @description Parent place's `id`; `null` for a root place. */
|
|
@@ -1873,17 +1999,17 @@ interface components {
|
|
|
1873
1999
|
* @description Result ordering. `relevance` (default) ranks by search relevance with featured jobs first; `newest` orders by publish date and `salary_high` by salary (no-salary jobs last). Any explicit sort unpins featured jobs.
|
|
1874
2000
|
* @enum {string}
|
|
1875
2001
|
*/
|
|
1876
|
-
sort?:
|
|
2002
|
+
sort?: "relevance" | "newest" | "salary_high";
|
|
1877
2003
|
/** @description Optional faceted filters to narrow search results. Multi-value filters match jobs in any of the supplied values; range filters accept `gte` and `lte` bounds. */
|
|
1878
2004
|
filters?: {
|
|
1879
2005
|
/** @description Only return jobs at any of the given company IDs. Up to 10 values. */
|
|
1880
2006
|
companyId?: string[];
|
|
1881
2007
|
/** @description Only return jobs with any of the given remote-work options. Up to 10 values. */
|
|
1882
|
-
remoteOption?: (
|
|
2008
|
+
remoteOption?: ("on_site" | "hybrid" | "remote")[];
|
|
1883
2009
|
/** @description Only return jobs with any of the given employment types. Up to 10 values. */
|
|
1884
|
-
employmentType?: (
|
|
2010
|
+
employmentType?: ("full_time" | "part_time" | "contract" | "internship" | "temporary" | "volunteer" | "other")[];
|
|
1885
2011
|
/** @description Only return jobs at any of the given seniority levels. Up to 10 values. */
|
|
1886
|
-
seniority?: (
|
|
2012
|
+
seniority?: ("entry_level" | "associate" | "mid_level" | "senior" | "lead" | "principal" | "director" | "executive")[];
|
|
1887
2013
|
/** @description Range filter on the job's `publishedAt` timestamp. */
|
|
1888
2014
|
publishedAt?: {
|
|
1889
2015
|
/**
|
|
@@ -1917,9 +2043,9 @@ interface components {
|
|
|
1917
2043
|
};
|
|
1918
2044
|
PublicTaxonomyResolution: {
|
|
1919
2045
|
/** @enum {string} */
|
|
1920
|
-
object:
|
|
2046
|
+
object: "taxonomy_resolution";
|
|
1921
2047
|
/** @enum {string} */
|
|
1922
|
-
type:
|
|
2048
|
+
type: "category" | "skill" | "place" | "market";
|
|
1923
2049
|
/** @description Immutable English source slug — the semantic-search key. */
|
|
1924
2050
|
sourceSlug: string;
|
|
1925
2051
|
/** @description Board-language URL slug (the `<link rel=canonical>` target). */
|
|
@@ -1928,7 +2054,7 @@ interface components {
|
|
|
1928
2054
|
displayName: string;
|
|
1929
2055
|
/** @description The canonical slug to emit a 308 redirect to when the inbound slug differs; `null` otherwise. */
|
|
1930
2056
|
redirectTo: string | null;
|
|
1931
|
-
geo: components[
|
|
2057
|
+
geo: components["schemas"]["TaxonomyGeo"];
|
|
1932
2058
|
};
|
|
1933
2059
|
PublicVerifyBoardPasswordBody: {
|
|
1934
2060
|
/** @description The board password. */
|
|
@@ -1943,7 +2069,7 @@ interface components {
|
|
|
1943
2069
|
};
|
|
1944
2070
|
RedirectResolution: {
|
|
1945
2071
|
/** @enum {string} */
|
|
1946
|
-
object:
|
|
2072
|
+
object: "redirect_resolution";
|
|
1947
2073
|
path: string;
|
|
1948
2074
|
/** @description The redirect target (board-relative), or `null` when no redirect matches. The consumer 308s to `target`, or 404s when `null`. */
|
|
1949
2075
|
target: string | null;
|
|
@@ -1983,7 +2109,7 @@ interface components {
|
|
|
1983
2109
|
* @description Hint indicating whether `token` is an `access_token` or `refresh_token`. Optional.
|
|
1984
2110
|
* @enum {string}
|
|
1985
2111
|
*/
|
|
1986
|
-
token_type_hint?:
|
|
2112
|
+
token_type_hint?: "access_token" | "refresh_token";
|
|
1987
2113
|
/** @description OAuth client identifier. May be supplied here or via HTTP Basic authentication. */
|
|
1988
2114
|
client_id?: string;
|
|
1989
2115
|
/** @description OAuth client secret. May be supplied here or via HTTP Basic authentication. */
|
|
@@ -1991,7 +2117,7 @@ interface components {
|
|
|
1991
2117
|
};
|
|
1992
2118
|
SalaryCompanyIndexItem: {
|
|
1993
2119
|
/** @enum {string} */
|
|
1994
|
-
object:
|
|
2120
|
+
object: "salary_company";
|
|
1995
2121
|
companySlug: string;
|
|
1996
2122
|
companyName: string;
|
|
1997
2123
|
logoPath: string | null;
|
|
@@ -2002,7 +2128,7 @@ interface components {
|
|
|
2002
2128
|
};
|
|
2003
2129
|
SalaryLocationIndexItem: {
|
|
2004
2130
|
/** @enum {string} */
|
|
2005
|
-
object:
|
|
2131
|
+
object: "salary_location";
|
|
2006
2132
|
placeSlug: string;
|
|
2007
2133
|
placeName: string;
|
|
2008
2134
|
/** @description Slug of the parent place; `null` for a top-level node. */
|
|
@@ -2013,7 +2139,7 @@ interface components {
|
|
|
2013
2139
|
};
|
|
2014
2140
|
SalarySkillIndexItem: {
|
|
2015
2141
|
/** @enum {string} */
|
|
2016
|
-
object:
|
|
2142
|
+
object: "salary_skill";
|
|
2017
2143
|
slug: string;
|
|
2018
2144
|
name: string;
|
|
2019
2145
|
avgSalaryMin: number;
|
|
@@ -2025,7 +2151,7 @@ interface components {
|
|
|
2025
2151
|
};
|
|
2026
2152
|
SalaryTitleIndexItem: {
|
|
2027
2153
|
/** @enum {string} */
|
|
2028
|
-
object:
|
|
2154
|
+
object: "salary_title";
|
|
2029
2155
|
slug: string;
|
|
2030
2156
|
name: string;
|
|
2031
2157
|
avgSalaryMin: number;
|
|
@@ -2037,7 +2163,7 @@ interface components {
|
|
|
2037
2163
|
};
|
|
2038
2164
|
SalesLedPlan: {
|
|
2039
2165
|
/** @enum {string} */
|
|
2040
|
-
object:
|
|
2166
|
+
object: "sales_led_plan";
|
|
2041
2167
|
id: string;
|
|
2042
2168
|
name: string;
|
|
2043
2169
|
description: string;
|
|
@@ -2056,17 +2182,17 @@ interface components {
|
|
|
2056
2182
|
/** @description Saved-job row ID. */
|
|
2057
2183
|
id: string;
|
|
2058
2184
|
/** @enum {string} */
|
|
2059
|
-
object:
|
|
2185
|
+
object: "saved_job";
|
|
2060
2186
|
/** @description The saved job — also the DELETE path key. */
|
|
2061
2187
|
jobId: string;
|
|
2062
2188
|
/** Format: date-time */
|
|
2063
2189
|
savedAt: string;
|
|
2064
|
-
job: components[
|
|
2190
|
+
job: components["schemas"]["PublicJob"];
|
|
2065
2191
|
};
|
|
2066
2192
|
SearchBlogPostsBody: {
|
|
2067
2193
|
query?: string;
|
|
2068
2194
|
/** @enum {string} */
|
|
2069
|
-
status?:
|
|
2195
|
+
status?: "draft" | "scheduled" | "published";
|
|
2070
2196
|
cursor?: string | null;
|
|
2071
2197
|
limit?: number;
|
|
2072
2198
|
};
|
|
@@ -2087,15 +2213,15 @@ interface components {
|
|
|
2087
2213
|
/** @description Optional faceted filters to narrow search results. Multi-value filters match jobs in any of the supplied values; range filters accept `gte` and `lte` bounds. */
|
|
2088
2214
|
filters?: {
|
|
2089
2215
|
/** @description Only return jobs in any of the given statuses. Up to 10 values. */
|
|
2090
|
-
status?: (
|
|
2216
|
+
status?: ("draft" | "published" | "expired" | "archived")[];
|
|
2091
2217
|
/** @description Only return jobs at any of the given company IDs. Up to 10 values. */
|
|
2092
2218
|
companyId?: string[];
|
|
2093
2219
|
/** @description Only return jobs with any of the given remote-work options. Up to 10 values. */
|
|
2094
|
-
remoteOption?: (
|
|
2220
|
+
remoteOption?: ("on_site" | "hybrid" | "remote")[];
|
|
2095
2221
|
/** @description Only return jobs with any of the given employment types. Up to 10 values. */
|
|
2096
|
-
employmentType?: (
|
|
2222
|
+
employmentType?: ("full_time" | "part_time" | "contract" | "internship" | "temporary" | "volunteer" | "other")[];
|
|
2097
2223
|
/** @description Only return jobs at any of the given seniority levels. Up to 10 values. */
|
|
2098
|
-
seniority?: (
|
|
2224
|
+
seniority?: ("entry_level" | "associate" | "mid_level" | "senior" | "lead" | "principal" | "director" | "executive")[];
|
|
2099
2225
|
/** @description Range filter on the job's `publishedAt` timestamp. */
|
|
2100
2226
|
publishedAt?: {
|
|
2101
2227
|
/**
|
|
@@ -2122,25 +2248,25 @@ interface components {
|
|
|
2122
2248
|
/** @description Whether AdSense placements are rendered on the public board. */
|
|
2123
2249
|
adsenseEnabled?: boolean;
|
|
2124
2250
|
/** @description AdSense publisher ID in `ca-pub-XXXXXXXXXXXXXXXX` format. Pass an empty string or `null` to clear. */
|
|
2125
|
-
adsenseClientId?: string |
|
|
2251
|
+
adsenseClientId?: string | "" | unknown | unknown;
|
|
2126
2252
|
/** @description Map of placement key to slot configuration. Placement keys are lowercase alphanumeric with `-`, `_`, `.`, or `:`. */
|
|
2127
2253
|
adsenseSlots?: {
|
|
2128
|
-
[key: string]: components[
|
|
2254
|
+
[key: string]: components["schemas"]["SettingsAdsenseSlot"];
|
|
2129
2255
|
};
|
|
2130
2256
|
/** @description Contents to serve from `/ads.txt`. Up to 2,000 characters. Pass an empty string or `null` to clear. */
|
|
2131
|
-
adsTxt?: string |
|
|
2257
|
+
adsTxt?: string | "" | unknown | unknown;
|
|
2132
2258
|
};
|
|
2133
2259
|
SettingsAdsenseSlot: {
|
|
2134
2260
|
/** @description Whether this placement is rendered. */
|
|
2135
2261
|
enabled: boolean;
|
|
2136
2262
|
/** @description Ten-digit AdSense slot ID. Pass an empty string or `null` to clear. */
|
|
2137
|
-
slotId: string |
|
|
2263
|
+
slotId: string | "" | unknown | unknown;
|
|
2138
2264
|
/** @description AdSense layout type for the placement. */
|
|
2139
|
-
layout?: (
|
|
2265
|
+
layout?: ("auto" | "in-article" | "in-feed" | "fluid") | "" | unknown | unknown;
|
|
2140
2266
|
/** @description AdSense ad format. */
|
|
2141
|
-
format?: (
|
|
2267
|
+
format?: ("auto" | "horizontal" | "vertical" | "rectangle" | "responsive") | "" | unknown | unknown;
|
|
2142
2268
|
/** @description Visual style override for the placement. */
|
|
2143
|
-
style?: (
|
|
2269
|
+
style?: ("default" | "light" | "dark" | "contrast") | "" | unknown | unknown;
|
|
2144
2270
|
/** @description How often the placement is shown (e.g. once every N items). */
|
|
2145
2271
|
frequency?: number | unknown | unknown;
|
|
2146
2272
|
};
|
|
@@ -2174,7 +2300,7 @@ interface components {
|
|
|
2174
2300
|
};
|
|
2175
2301
|
SkillLocationSalary: {
|
|
2176
2302
|
/** @enum {string} */
|
|
2177
|
-
object:
|
|
2303
|
+
object: "skill_location_salary";
|
|
2178
2304
|
skillSourceSlug: string;
|
|
2179
2305
|
skillCanonicalSlug: string;
|
|
2180
2306
|
locationSourceSlug: string;
|
|
@@ -2241,16 +2367,16 @@ interface components {
|
|
|
2241
2367
|
};
|
|
2242
2368
|
SkillLocationsIndex: {
|
|
2243
2369
|
/** @enum {string} */
|
|
2244
|
-
object:
|
|
2370
|
+
object: "skill_locations_index";
|
|
2245
2371
|
sourceSlug: string;
|
|
2246
2372
|
canonicalSlug: string;
|
|
2247
2373
|
skillName: string;
|
|
2248
2374
|
currency: string;
|
|
2249
|
-
locations: components[
|
|
2375
|
+
locations: components["schemas"]["SalaryLocationIndexItem"][];
|
|
2250
2376
|
};
|
|
2251
2377
|
SkillSalaryDetail: {
|
|
2252
2378
|
/** @enum {string} */
|
|
2253
|
-
object:
|
|
2379
|
+
object: "skill_salary_detail";
|
|
2254
2380
|
/** @description Immutable English source slug — the salary-stats key. */
|
|
2255
2381
|
sourceSlug: string;
|
|
2256
2382
|
/** @description Board-language canonical URL slug — the starter 308 target. */
|
|
@@ -2313,7 +2439,7 @@ interface components {
|
|
|
2313
2439
|
};
|
|
2314
2440
|
TalentDirectoryEntry: {
|
|
2315
2441
|
/** @enum {string} */
|
|
2316
|
-
object:
|
|
2442
|
+
object: "talent_directory_entry";
|
|
2317
2443
|
handle: string | null;
|
|
2318
2444
|
displayName: string | null;
|
|
2319
2445
|
headline: string | null;
|
|
@@ -2336,7 +2462,7 @@ interface components {
|
|
|
2336
2462
|
};
|
|
2337
2463
|
TalentProfile: {
|
|
2338
2464
|
/** @enum {string} */
|
|
2339
|
-
object:
|
|
2465
|
+
object: "talent_profile";
|
|
2340
2466
|
handle: string | null;
|
|
2341
2467
|
displayName: string | null;
|
|
2342
2468
|
headline: string | null;
|
|
@@ -2395,7 +2521,7 @@ interface components {
|
|
|
2395
2521
|
} | null;
|
|
2396
2522
|
TitleLocationSalary: {
|
|
2397
2523
|
/** @enum {string} */
|
|
2398
|
-
object:
|
|
2524
|
+
object: "title_location_salary";
|
|
2399
2525
|
categorySourceSlug: string;
|
|
2400
2526
|
categoryCanonicalSlug: string;
|
|
2401
2527
|
locationSourceSlug: string;
|
|
@@ -2462,16 +2588,16 @@ interface components {
|
|
|
2462
2588
|
};
|
|
2463
2589
|
TitleLocationsIndex: {
|
|
2464
2590
|
/** @enum {string} */
|
|
2465
|
-
object:
|
|
2591
|
+
object: "title_locations_index";
|
|
2466
2592
|
sourceSlug: string;
|
|
2467
2593
|
canonicalSlug: string;
|
|
2468
2594
|
categoryName: string;
|
|
2469
2595
|
currency: string;
|
|
2470
|
-
locations: components[
|
|
2596
|
+
locations: components["schemas"]["SalaryLocationIndexItem"][];
|
|
2471
2597
|
};
|
|
2472
2598
|
TitleSalaryDetail: {
|
|
2473
2599
|
/** @enum {string} */
|
|
2474
|
-
object:
|
|
2600
|
+
object: "title_salary_detail";
|
|
2475
2601
|
/** @description Immutable English source slug — the salary-stats key. */
|
|
2476
2602
|
sourceSlug: string;
|
|
2477
2603
|
/** @description Board-language canonical URL slug — the starter 308 target. */
|
|
@@ -2543,7 +2669,7 @@ interface components {
|
|
|
2543
2669
|
* @description OAuth grant type. Either `authorization_code` to exchange an authorization code for a new token pair, or `refresh_token` to exchange a refresh token for a new token pair.
|
|
2544
2670
|
* @enum {string}
|
|
2545
2671
|
*/
|
|
2546
|
-
grant_type:
|
|
2672
|
+
grant_type: "authorization_code" | "refresh_token";
|
|
2547
2673
|
/** @description Authorization code returned from the authorization endpoint. Required when `grant_type` is `authorization_code`. */
|
|
2548
2674
|
code?: string;
|
|
2549
2675
|
/** @description Redirect URI used in the original authorization request. Must match exactly. Required when `grant_type` is `authorization_code`. */
|
|
@@ -2566,7 +2692,7 @@ interface components {
|
|
|
2566
2692
|
* @description Always `Bearer`.
|
|
2567
2693
|
* @enum {string}
|
|
2568
2694
|
*/
|
|
2569
|
-
token_type:
|
|
2695
|
+
token_type: "Bearer";
|
|
2570
2696
|
/** @description Lifetime of the access token, in seconds. */
|
|
2571
2697
|
expires_in: number;
|
|
2572
2698
|
/** @description Newly issued refresh token. Single-use; reusing it revokes the entire token chain. */
|
|
@@ -2574,6 +2700,12 @@ interface components {
|
|
|
2574
2700
|
/** @description Space-separated list of scopes granted on the issued token. */
|
|
2575
2701
|
scope: string;
|
|
2576
2702
|
};
|
|
2703
|
+
UnsubscribeBody: {
|
|
2704
|
+
boardUserId: string;
|
|
2705
|
+
/** @enum {string} */
|
|
2706
|
+
channel: "messageEmails" | "applicationEmails";
|
|
2707
|
+
token: string;
|
|
2708
|
+
};
|
|
2577
2709
|
UpdateAuthorBody: {
|
|
2578
2710
|
/** @description URL-friendly slug for the author. Auto-generated from `name` when omitted. */
|
|
2579
2711
|
slug?: string;
|
|
@@ -2588,7 +2720,7 @@ interface components {
|
|
|
2588
2720
|
* @description Author visibility status. One of `active` or `inactive`.
|
|
2589
2721
|
* @enum {string}
|
|
2590
2722
|
*/
|
|
2591
|
-
status?:
|
|
2723
|
+
status?: "active" | "inactive";
|
|
2592
2724
|
/** @description Storage ID of an uploaded avatar image (from `POST /v1/media/upload`). Pass `null` to clear an existing avatar. */
|
|
2593
2725
|
avatarStorageId?: string | null;
|
|
2594
2726
|
/** @description The author's personal website URL. Normalized to a canonical URL when stored. */
|
|
@@ -2626,7 +2758,21 @@ interface components {
|
|
|
2626
2758
|
publishedAt?: string;
|
|
2627
2759
|
title?: string;
|
|
2628
2760
|
/** @enum {string} */
|
|
2629
|
-
status?:
|
|
2761
|
+
status?: "draft" | "scheduled" | "published";
|
|
2762
|
+
};
|
|
2763
|
+
UpdateCandidateProfileBody: {
|
|
2764
|
+
displayName?: string;
|
|
2765
|
+
bio?: string;
|
|
2766
|
+
handle?: string;
|
|
2767
|
+
headline?: string;
|
|
2768
|
+
location?: string;
|
|
2769
|
+
/** @enum {string} */
|
|
2770
|
+
profileVisibility?: "hidden" | "logged_in_only" | "public";
|
|
2771
|
+
/** @enum {string} */
|
|
2772
|
+
jobSearchStatus?: "actively_looking" | "open_to_offers" | "not_looking";
|
|
2773
|
+
/** @enum {string} */
|
|
2774
|
+
jobSearchStatusVisibleTo?: "everyone" | "employers_only";
|
|
2775
|
+
openToRelocate?: boolean;
|
|
2630
2776
|
};
|
|
2631
2777
|
UpdateCompanyBody: {
|
|
2632
2778
|
/** @description Public company website URL. Normalized to a canonical apex domain when stored. */
|
|
@@ -2646,6 +2792,31 @@ interface components {
|
|
|
2646
2792
|
/** @description URL-friendly slug for the company. */
|
|
2647
2793
|
slug?: string;
|
|
2648
2794
|
};
|
|
2795
|
+
UpdateEducationBody: {
|
|
2796
|
+
institutionName?: string;
|
|
2797
|
+
institutionUrl?: string;
|
|
2798
|
+
degree?: string;
|
|
2799
|
+
fieldOfStudy?: string;
|
|
2800
|
+
grade?: string;
|
|
2801
|
+
activitiesAndSocieties?: string;
|
|
2802
|
+
startDate?: string;
|
|
2803
|
+
endDate?: string;
|
|
2804
|
+
description?: string;
|
|
2805
|
+
sortOrder?: number;
|
|
2806
|
+
};
|
|
2807
|
+
UpdateExperienceBody: {
|
|
2808
|
+
title?: string;
|
|
2809
|
+
companyName?: string;
|
|
2810
|
+
startDate?: string;
|
|
2811
|
+
companyUrl?: string;
|
|
2812
|
+
location?: string;
|
|
2813
|
+
employmentType?: string;
|
|
2814
|
+
locationType?: string;
|
|
2815
|
+
foundVia?: string;
|
|
2816
|
+
endDate?: string;
|
|
2817
|
+
description?: string;
|
|
2818
|
+
sortOrder?: number;
|
|
2819
|
+
};
|
|
2649
2820
|
UpdateJobBody: {
|
|
2650
2821
|
/** @description Identifier of the company the job belongs to. */
|
|
2651
2822
|
companyId?: string;
|
|
@@ -2657,22 +2828,22 @@ interface components {
|
|
|
2657
2828
|
* @description Employment type of the role.
|
|
2658
2829
|
* @enum {string}
|
|
2659
2830
|
*/
|
|
2660
|
-
employmentType?:
|
|
2831
|
+
employmentType?: "full_time" | "part_time" | "contract" | "internship" | "temporary" | "volunteer" | "other";
|
|
2661
2832
|
/**
|
|
2662
2833
|
* @description Whether the role is on-site, hybrid, or fully remote.
|
|
2663
2834
|
* @enum {string}
|
|
2664
2835
|
*/
|
|
2665
|
-
remoteOption?:
|
|
2836
|
+
remoteOption?: "on_site" | "hybrid" | "remote";
|
|
2666
2837
|
/** @description Where remote candidates must hold work authorization. Each entry is the smallest relevant scope: `worldwide`, a `world_region` (EMEA / LATAM / NA / APAC), a `continent`, a `region`, a `subregion`, a `custom` group (e.g. `EU`), a `country` (ISO 3166-1 alpha-2), or a `subdivision` (ISO 3166-2). Subdivisions auto-imply their parent country in the derived `remoteWorkPermitCountryCodes` output. Worldwide is mutually exclusive with all other entries. The canonical `{type, value}` set is published at `GET /v1/taxonomies/remote-permits`. Pass `[]` to clear an existing constraint. */
|
|
2667
2838
|
remotePermits?: {
|
|
2668
2839
|
/** @enum {string} */
|
|
2669
|
-
type:
|
|
2840
|
+
type: "worldwide" | "world_region" | "continent" | "region" | "subregion" | "subdivision" | "country" | "custom";
|
|
2670
2841
|
value: string;
|
|
2671
2842
|
}[];
|
|
2672
2843
|
/** @description Where remote candidates must be timezone-compatible. Each entry mirrors the `remotePermits` shape (`world_region`, `continent`, `region`, `subregion`, `country`) plus `timezone` (specific IANA name with optional `plusMinus` ±N hours expansion) and `all` (every timezone — equivalent of `worldwide` for permits). The canonical `{type, value}` set is published at `GET /v1/taxonomies/remote-timezones`. **When omitted on POST**, the server auto-derives this from `remotePermits` (or `[{all,all}]` if neither was provided). **PATCH never auto-re-derives** — once set, only an explicit replacement updates the stored value, even when `remotePermits` changes. Pass `[]` to clear an existing constraint. */
|
|
2673
2844
|
remoteTimezones?: {
|
|
2674
2845
|
/** @enum {string} */
|
|
2675
|
-
type:
|
|
2846
|
+
type: "all" | "world_region" | "continent" | "region" | "subregion" | "country" | "timezone";
|
|
2676
2847
|
value: string;
|
|
2677
2848
|
plusMinus?: number;
|
|
2678
2849
|
}[];
|
|
@@ -2680,12 +2851,12 @@ interface components {
|
|
|
2680
2851
|
* @description Whether the employer sponsors visas for remote candidates. One of `yes`, `no`, or `unknown`.
|
|
2681
2852
|
* @enum {string}
|
|
2682
2853
|
*/
|
|
2683
|
-
remoteSponsorship?:
|
|
2854
|
+
remoteSponsorship?: "yes" | "no" | "unknown";
|
|
2684
2855
|
/**
|
|
2685
2856
|
* @description Seniority level of the role.
|
|
2686
2857
|
* @enum {string}
|
|
2687
2858
|
*/
|
|
2688
|
-
seniority?:
|
|
2859
|
+
seniority?: "entry_level" | "associate" | "mid_level" | "senior" | "lead" | "principal" | "director" | "executive";
|
|
2689
2860
|
/** @description Where candidates apply. Accepts an HTTPS URL, a `mailto:` URI, or a bare email address (which is normalized to `mailto:` form). */
|
|
2690
2861
|
applicationUrl?: string;
|
|
2691
2862
|
/** @description Minimum salary, in `salaryCurrency` units. */
|
|
@@ -2698,7 +2869,7 @@ interface components {
|
|
|
2698
2869
|
* @description Period the `salaryMin` and `salaryMax` figures are quoted against.
|
|
2699
2870
|
* @enum {string}
|
|
2700
2871
|
*/
|
|
2701
|
-
salaryTimeframe?:
|
|
2872
|
+
salaryTimeframe?: "per_year" | "per_month" | "per_week" | "per_day" | "per_hour";
|
|
2702
2873
|
/** @description Whether the job appears in featured slots on the public board. */
|
|
2703
2874
|
isFeatured?: boolean;
|
|
2704
2875
|
/** @description Job expiry as a Unix epoch in milliseconds. On create, omitted or `null` defaults to 30 days from creation. On PATCH, pass `null` to clear an existing expiry. Past timestamps remove the job from the public board. */
|
|
@@ -2706,7 +2877,7 @@ interface components {
|
|
|
2706
2877
|
/** @description Time at which the job was first published, as a Unix epoch in milliseconds. When omitted on create with `status: "published"`, the server stamps the current time. Useful for bulk-importing historical jobs while preserving original publication dates. PATCH may overwrite an existing value but cannot clear it. */
|
|
2707
2878
|
publishedAt?: number;
|
|
2708
2879
|
/** @description Required education credentials. Each value is one of `high_school`, `associate_degree`, `bachelor_degree`, `professional_certificate`, `postgraduate_degree`, or `no_requirements`. */
|
|
2709
|
-
educationRequirements?: (
|
|
2880
|
+
educationRequirements?: ("high_school" | "associate_degree" | "bachelor_degree" | "professional_certificate" | "postgraduate_degree" | "no_requirements")[];
|
|
2710
2881
|
/** @description Minimum required experience, expressed in months. */
|
|
2711
2882
|
experienceMonths?: number;
|
|
2712
2883
|
/** @description If `true`, equivalent experience may substitute for the listed education requirements. */
|
|
@@ -2715,11 +2886,11 @@ interface components {
|
|
|
2715
2886
|
* @description Period denominator for `inOfficeFrequency`.
|
|
2716
2887
|
* @enum {string}
|
|
2717
2888
|
*/
|
|
2718
|
-
inOfficePeriod?:
|
|
2889
|
+
inOfficePeriod?: "per_week" | "per_month" | "per_year";
|
|
2719
2890
|
/** @description How often the candidate must be in-office over `inOfficePeriod`. */
|
|
2720
2891
|
inOfficeFrequency?: number;
|
|
2721
2892
|
/** @description Physical office locations associated with the job. Each entry is forward-geocoded server-side; a country mismatch returns `400 jobs_unresolvable_location`. */
|
|
2722
|
-
officeLocations?: components[
|
|
2893
|
+
officeLocations?: components["schemas"]["JobOfficeLocationInput"][];
|
|
2723
2894
|
/** @description An external identifier for the job from your own system, such as an ATS requisition ID. Use this value to look up the job later via `GET /v1/jobs?externalId=...` for deduplication. Scoped per-account: two different accounts may reuse the same `externalId` without collision. Up to 255 characters. */
|
|
2724
2895
|
externalId?: string;
|
|
2725
2896
|
/** @description Board-defined custom-field values, keyed by the field `key` (definitions, including type and option keys, are published at `GET /v1/settings/job-form`). Writes are **additive**: on `PATCH` a key you send is set/overwritten and a key you omit is preserved (unsent keys are never cleared); on `POST` this initializes the bag. Send a key with an intentional-empty value — `null`, `""`, or `[]` — to **clear** it (`""`/`null` clear any type; `[]` clears a `multi_select`); `false` and `0` are kept as real values. Values must match the field type and `single_select`/`multi_select` must use defined option **keys** (not labels); a wrong-typed value is rejected (`custom_field_wrong_type`), never silently cleared. Unknown keys are ignored. The stored bag never contains `null`/empty values. */
|
|
@@ -2729,6 +2900,20 @@ interface components {
|
|
|
2729
2900
|
/** @description The job title. */
|
|
2730
2901
|
title?: string;
|
|
2731
2902
|
};
|
|
2903
|
+
UpdateLanguagesBody: {
|
|
2904
|
+
languages: {
|
|
2905
|
+
name: string;
|
|
2906
|
+
proficiency: string;
|
|
2907
|
+
}[];
|
|
2908
|
+
};
|
|
2909
|
+
UpdateNotificationPreferenceBody: {
|
|
2910
|
+
/** @enum {string} */
|
|
2911
|
+
channel: "messageEmails" | "applicationEmails";
|
|
2912
|
+
subscribed: boolean;
|
|
2913
|
+
};
|
|
2914
|
+
UpdateSkillsBody: {
|
|
2915
|
+
skills: string[];
|
|
2916
|
+
};
|
|
2732
2917
|
UpdateTagBody: {
|
|
2733
2918
|
/** @description URL-friendly slug for the tag. Auto-generated from `name` when omitted. */
|
|
2734
2919
|
slug?: string;
|
|
@@ -2738,7 +2923,7 @@ interface components {
|
|
|
2738
2923
|
* @description Tag visibility. One of `public` or `internal`.
|
|
2739
2924
|
* @enum {string}
|
|
2740
2925
|
*/
|
|
2741
|
-
visibility?:
|
|
2926
|
+
visibility?: "public" | "internal";
|
|
2742
2927
|
/** @description SEO meta title for the tag page. */
|
|
2743
2928
|
metaTitle?: string;
|
|
2744
2929
|
/** @description SEO meta description for the tag page. */
|
|
@@ -2753,7 +2938,7 @@ interface components {
|
|
|
2753
2938
|
* @description String representing the object's type. Objects of the same type share the same value.
|
|
2754
2939
|
* @enum {string}
|
|
2755
2940
|
*/
|
|
2756
|
-
object:
|
|
2941
|
+
object: "usage";
|
|
2757
2942
|
/** @description Number of jobs currently in `published` status. */
|
|
2758
2943
|
activeJobs: number;
|
|
2759
2944
|
/** @description Plan-enforced cap on the number of published jobs. */
|
|
@@ -2986,7 +3171,7 @@ declare function isConflict(e: unknown): e is BoardApiError;
|
|
|
2986
3171
|
* constant because the package is platform-neutral and cannot read
|
|
2987
3172
|
* package.json at runtime.
|
|
2988
3173
|
*/
|
|
2989
|
-
declare const SDK_VERSION = "1.
|
|
3174
|
+
declare const SDK_VERSION = "1.20.0";
|
|
2990
3175
|
|
|
2991
3176
|
type BoardUser = Schemas['BoardUser'];
|
|
2992
3177
|
type BoardAuthSession = Schemas['BoardAuthSession'];
|
|
@@ -2997,6 +3182,14 @@ type LogoutBody = Schemas['BoardAuthLogoutBody'];
|
|
|
2997
3182
|
type VerifyEmailBody = Schemas['BoardAuthVerifyEmailBody'];
|
|
2998
3183
|
type ForgotPasswordBody = Schemas['BoardAuthForgotPasswordBody'];
|
|
2999
3184
|
type ResetPasswordBody = Schemas['BoardAuthResetPasswordBody'];
|
|
3185
|
+
type RequestMagicLinkBody = Schemas['BoardAuthRequestMagicLinkBody'];
|
|
3186
|
+
type ConsumeMagicLinkBody = Schemas['BoardAuthConsumeMagicLinkBody'];
|
|
3187
|
+
type OAuthProvider = 'google' | 'linkedin';
|
|
3188
|
+
type OAuthAuthorizationQuery = {
|
|
3189
|
+
returnTo?: string;
|
|
3190
|
+
};
|
|
3191
|
+
type OAuthAuthorizationUrl = Schemas['BoardAuthOAuthAuthorizationUrl'];
|
|
3192
|
+
type OAuthExchangeBody = Schemas['BoardAuthOAuthExchangeBody'];
|
|
3000
3193
|
|
|
3001
3194
|
type PublicBoard = Schemas['PublicBoardContext'];
|
|
3002
3195
|
type PublicBoardFeatures = PublicBoard['features'];
|
|
@@ -3171,6 +3364,27 @@ type SavedJobsListQuery = {
|
|
|
3171
3364
|
limit?: number;
|
|
3172
3365
|
};
|
|
3173
3366
|
type SaveJobBody = Schemas['SaveJobBody'];
|
|
3367
|
+
/** The authenticated user's lean candidate profile singleton. */
|
|
3368
|
+
type CandidateProfile = Schemas['CandidateProfile'];
|
|
3369
|
+
/** Optional-field merge-patch body for `board.me.profile.update`. */
|
|
3370
|
+
type UpdateCandidateProfileBody = Schemas['UpdateCandidateProfileBody'];
|
|
3371
|
+
/** The result of `board.me.profile.handleAvailable(handle)`. */
|
|
3372
|
+
type HandleAvailability = Schemas['HandleAvailability'];
|
|
3373
|
+
type CandidateExperience = Schemas['CandidateExperience'];
|
|
3374
|
+
type CreateExperienceBody = Schemas['CreateExperienceBody'];
|
|
3375
|
+
type UpdateExperienceBody = Schemas['UpdateExperienceBody'];
|
|
3376
|
+
type CandidateEducation = Schemas['CandidateEducation'];
|
|
3377
|
+
type CreateEducationBody = Schemas['CreateEducationBody'];
|
|
3378
|
+
type UpdateEducationBody = Schemas['UpdateEducationBody'];
|
|
3379
|
+
type CandidateSkill = Schemas['CandidateSkill'];
|
|
3380
|
+
type UpdateSkillsBody = Schemas['UpdateSkillsBody'];
|
|
3381
|
+
type CandidateLanguage = Schemas['CandidateLanguage'];
|
|
3382
|
+
type UpdateLanguagesBody = Schemas['UpdateLanguagesBody'];
|
|
3383
|
+
/** The result of `board.me.profile.uploadAvatar(file)`. */
|
|
3384
|
+
type CandidateAvatar = Schemas['CandidateAvatar'];
|
|
3385
|
+
type NotificationPreference = Schemas['NotificationPreference'];
|
|
3386
|
+
type UpdateNotificationPreferenceBody = Schemas['UpdateNotificationPreferenceBody'];
|
|
3387
|
+
type UnsubscribeBody = Schemas['UnsubscribeBody'];
|
|
3174
3388
|
|
|
3175
3389
|
type JobAlertFrequency = 'daily' | 'weekly';
|
|
3176
3390
|
type JobAlertRemoteOption = 'on_site' | 'hybrid' | 'remote';
|
|
@@ -3876,6 +4090,26 @@ declare function createBoardClient(options: CreateBoardClientOptions): {
|
|
|
3876
4090
|
verifyEmail(body: VerifyEmailBody, options?: FetchOptions): Promise<void>;
|
|
3877
4091
|
forgotPassword(body: ForgotPasswordBody, options?: FetchOptions): Promise<void>;
|
|
3878
4092
|
resetPassword(body: ResetPasswordBody, options?: FetchOptions): Promise<void>;
|
|
4093
|
+
requestMagicLink(body: RequestMagicLinkBody, options?: FetchOptions): Promise<void>;
|
|
4094
|
+
consumeMagicLink(body: ConsumeMagicLinkBody, options?: FetchOptions): Promise<{
|
|
4095
|
+
object: "board_auth_session";
|
|
4096
|
+
accessToken: string;
|
|
4097
|
+
refreshToken: string;
|
|
4098
|
+
expiresAt: number;
|
|
4099
|
+
boardUser: components["schemas"]["BoardUser"];
|
|
4100
|
+
}>;
|
|
4101
|
+
getOAuthAuthorizationUrl(provider: OAuthProvider, query?: OAuthAuthorizationQuery, options?: FetchOptions): Promise<{
|
|
4102
|
+
object: "oauth_authorization_url";
|
|
4103
|
+
provider: "google" | "linkedin";
|
|
4104
|
+
authorizeUrl: string;
|
|
4105
|
+
}>;
|
|
4106
|
+
exchangeOAuth(body: OAuthExchangeBody, options?: FetchOptions): Promise<{
|
|
4107
|
+
object: "board_auth_session";
|
|
4108
|
+
accessToken: string;
|
|
4109
|
+
refreshToken: string;
|
|
4110
|
+
expiresAt: number;
|
|
4111
|
+
boardUser: components["schemas"]["BoardUser"];
|
|
4112
|
+
}>;
|
|
3879
4113
|
};
|
|
3880
4114
|
me: {
|
|
3881
4115
|
retrieve(query?: Record<string, never>, options?: FetchOptions): Promise<{
|
|
@@ -3886,6 +4120,173 @@ declare function createBoardClient(options: CreateBoardClientOptions): {
|
|
|
3886
4120
|
displayName: string | null;
|
|
3887
4121
|
emailVerified: boolean;
|
|
3888
4122
|
}>;
|
|
4123
|
+
delete(options?: FetchOptions): Promise<void>;
|
|
4124
|
+
profile: {
|
|
4125
|
+
retrieve(query?: Record<string, never>, options?: FetchOptions): Promise<{
|
|
4126
|
+
id: string;
|
|
4127
|
+
object: "candidate_profile";
|
|
4128
|
+
displayName: string | null;
|
|
4129
|
+
bio: string | null;
|
|
4130
|
+
avatarUrl: string | null;
|
|
4131
|
+
handle: string | null;
|
|
4132
|
+
headline: string | null;
|
|
4133
|
+
location: string | null;
|
|
4134
|
+
profileVisibility: "hidden" | "logged_in_only" | "public";
|
|
4135
|
+
jobSearchStatus: "actively_looking" | "open_to_offers" | "not_looking";
|
|
4136
|
+
jobSearchStatusVisibleTo: "everyone" | "employers_only";
|
|
4137
|
+
openToRelocate: boolean;
|
|
4138
|
+
}>;
|
|
4139
|
+
update(body: UpdateCandidateProfileBody, query?: Record<string, never>, options?: FetchOptions): Promise<{
|
|
4140
|
+
id: string;
|
|
4141
|
+
object: "candidate_profile";
|
|
4142
|
+
displayName: string | null;
|
|
4143
|
+
bio: string | null;
|
|
4144
|
+
avatarUrl: string | null;
|
|
4145
|
+
handle: string | null;
|
|
4146
|
+
headline: string | null;
|
|
4147
|
+
location: string | null;
|
|
4148
|
+
profileVisibility: "hidden" | "logged_in_only" | "public";
|
|
4149
|
+
jobSearchStatus: "actively_looking" | "open_to_offers" | "not_looking";
|
|
4150
|
+
jobSearchStatusVisibleTo: "everyone" | "employers_only";
|
|
4151
|
+
openToRelocate: boolean;
|
|
4152
|
+
}>;
|
|
4153
|
+
handleAvailable(handle: string, options?: FetchOptions): Promise<{
|
|
4154
|
+
object: "handle_availability";
|
|
4155
|
+
handle: string;
|
|
4156
|
+
available: boolean;
|
|
4157
|
+
}>;
|
|
4158
|
+
listExperience(options?: FetchOptions): Promise<ListEnvelope<{
|
|
4159
|
+
id: string;
|
|
4160
|
+
object: "candidate_experience";
|
|
4161
|
+
title: string;
|
|
4162
|
+
companyName: string;
|
|
4163
|
+
companyUrl: string | null;
|
|
4164
|
+
location: string | null;
|
|
4165
|
+
employmentType: string | null;
|
|
4166
|
+
locationType: string | null;
|
|
4167
|
+
foundVia: string | null;
|
|
4168
|
+
startDate: string;
|
|
4169
|
+
endDate: string | null;
|
|
4170
|
+
description: string | null;
|
|
4171
|
+
sortOrder: number;
|
|
4172
|
+
experienceSkills: string[];
|
|
4173
|
+
}>>;
|
|
4174
|
+
createExperience(body: CreateExperienceBody, options?: FetchOptions): Promise<{
|
|
4175
|
+
id: string;
|
|
4176
|
+
object: "candidate_experience";
|
|
4177
|
+
title: string;
|
|
4178
|
+
companyName: string;
|
|
4179
|
+
companyUrl: string | null;
|
|
4180
|
+
location: string | null;
|
|
4181
|
+
employmentType: string | null;
|
|
4182
|
+
locationType: string | null;
|
|
4183
|
+
foundVia: string | null;
|
|
4184
|
+
startDate: string;
|
|
4185
|
+
endDate: string | null;
|
|
4186
|
+
description: string | null;
|
|
4187
|
+
sortOrder: number;
|
|
4188
|
+
experienceSkills: string[];
|
|
4189
|
+
}>;
|
|
4190
|
+
updateExperience(id: string, body: UpdateExperienceBody, options?: FetchOptions): Promise<{
|
|
4191
|
+
id: string;
|
|
4192
|
+
object: "candidate_experience";
|
|
4193
|
+
title: string;
|
|
4194
|
+
companyName: string;
|
|
4195
|
+
companyUrl: string | null;
|
|
4196
|
+
location: string | null;
|
|
4197
|
+
employmentType: string | null;
|
|
4198
|
+
locationType: string | null;
|
|
4199
|
+
foundVia: string | null;
|
|
4200
|
+
startDate: string;
|
|
4201
|
+
endDate: string | null;
|
|
4202
|
+
description: string | null;
|
|
4203
|
+
sortOrder: number;
|
|
4204
|
+
experienceSkills: string[];
|
|
4205
|
+
}>;
|
|
4206
|
+
deleteExperience(id: string, options?: FetchOptions): Promise<void>;
|
|
4207
|
+
listEducation(options?: FetchOptions): Promise<ListEnvelope<{
|
|
4208
|
+
id: string;
|
|
4209
|
+
object: "candidate_education";
|
|
4210
|
+
institutionName: string;
|
|
4211
|
+
institutionUrl: string | null;
|
|
4212
|
+
degree: string | null;
|
|
4213
|
+
fieldOfStudy: string | null;
|
|
4214
|
+
grade: string | null;
|
|
4215
|
+
activitiesAndSocieties: string | null;
|
|
4216
|
+
startDate: string | null;
|
|
4217
|
+
endDate: string | null;
|
|
4218
|
+
description: string | null;
|
|
4219
|
+
sortOrder: number;
|
|
4220
|
+
}>>;
|
|
4221
|
+
createEducation(body: CreateEducationBody, options?: FetchOptions): Promise<{
|
|
4222
|
+
id: string;
|
|
4223
|
+
object: "candidate_education";
|
|
4224
|
+
institutionName: string;
|
|
4225
|
+
institutionUrl: string | null;
|
|
4226
|
+
degree: string | null;
|
|
4227
|
+
fieldOfStudy: string | null;
|
|
4228
|
+
grade: string | null;
|
|
4229
|
+
activitiesAndSocieties: string | null;
|
|
4230
|
+
startDate: string | null;
|
|
4231
|
+
endDate: string | null;
|
|
4232
|
+
description: string | null;
|
|
4233
|
+
sortOrder: number;
|
|
4234
|
+
}>;
|
|
4235
|
+
updateEducation(id: string, body: UpdateEducationBody, options?: FetchOptions): Promise<{
|
|
4236
|
+
id: string;
|
|
4237
|
+
object: "candidate_education";
|
|
4238
|
+
institutionName: string;
|
|
4239
|
+
institutionUrl: string | null;
|
|
4240
|
+
degree: string | null;
|
|
4241
|
+
fieldOfStudy: string | null;
|
|
4242
|
+
grade: string | null;
|
|
4243
|
+
activitiesAndSocieties: string | null;
|
|
4244
|
+
startDate: string | null;
|
|
4245
|
+
endDate: string | null;
|
|
4246
|
+
description: string | null;
|
|
4247
|
+
sortOrder: number;
|
|
4248
|
+
}>;
|
|
4249
|
+
deleteEducation(id: string, options?: FetchOptions): Promise<void>;
|
|
4250
|
+
listSkills(options?: FetchOptions): Promise<ListEnvelope<{
|
|
4251
|
+
object: "candidate_skill";
|
|
4252
|
+
name: string;
|
|
4253
|
+
jobSkillId: string | null;
|
|
4254
|
+
}>>;
|
|
4255
|
+
updateSkills(body: UpdateSkillsBody, options?: FetchOptions): Promise<ListEnvelope<{
|
|
4256
|
+
object: "candidate_skill";
|
|
4257
|
+
name: string;
|
|
4258
|
+
jobSkillId: string | null;
|
|
4259
|
+
}>>;
|
|
4260
|
+
listLanguages(options?: FetchOptions): Promise<ListEnvelope<{
|
|
4261
|
+
object: "candidate_language";
|
|
4262
|
+
name: string;
|
|
4263
|
+
proficiency: string;
|
|
4264
|
+
}>>;
|
|
4265
|
+
updateLanguages(body: UpdateLanguagesBody, options?: FetchOptions): Promise<ListEnvelope<{
|
|
4266
|
+
object: "candidate_language";
|
|
4267
|
+
name: string;
|
|
4268
|
+
proficiency: string;
|
|
4269
|
+
}>>;
|
|
4270
|
+
uploadAvatar(file: Blob, options?: FetchOptions): Promise<{
|
|
4271
|
+
object: "candidate_avatar";
|
|
4272
|
+
avatarUrl: string | null;
|
|
4273
|
+
}>;
|
|
4274
|
+
};
|
|
4275
|
+
notificationPreferences: {
|
|
4276
|
+
retrieve(options?: FetchOptions): Promise<ListEnvelope<{
|
|
4277
|
+
object: "notification_preference";
|
|
4278
|
+
channel: "messageEmails" | "applicationEmails";
|
|
4279
|
+
subscribed: boolean;
|
|
4280
|
+
updatedAt: number | null;
|
|
4281
|
+
}>>;
|
|
4282
|
+
update(body: UpdateNotificationPreferenceBody, options?: FetchOptions): Promise<ListEnvelope<{
|
|
4283
|
+
object: "notification_preference";
|
|
4284
|
+
channel: "messageEmails" | "applicationEmails";
|
|
4285
|
+
subscribed: boolean;
|
|
4286
|
+
updatedAt: number | null;
|
|
4287
|
+
}>>;
|
|
4288
|
+
unsubscribeWithToken(body: UnsubscribeBody, options?: FetchOptions): Promise<void>;
|
|
4289
|
+
};
|
|
3889
4290
|
savedJobs: {
|
|
3890
4291
|
list(query?: SavedJobsListQuery, options?: FetchOptions): Promise<ListEnvelope<{
|
|
3891
4292
|
id: string;
|
|
@@ -4602,4 +5003,4 @@ declare function createBoardClient(options: CreateBoardClientOptions): {
|
|
|
4602
5003
|
};
|
|
4603
5004
|
type BoardSdk = ReturnType<typeof createBoardClient>;
|
|
4604
5005
|
|
|
4605
|
-
export { ACCESS_TOKEN_KEY, type Awaitable, BOARD_ACCESS_GRANT_KEY, type BlogAuthorEmbed, type BlogPostsListQuery, type BlogSearchBody, type BlogSimilarQuery, type BlogTagEmbed, type BoardAccessGrant, BoardApiError, type BoardAuthSession, BoardClient, type BoardRequest, type BoardSdk, type BoardSeo, type BoardUser, type CompaniesListQuery, type CompaniesSearchBody, type CompanyCategorySalary, type CompanyJobsListQuery, type CompanyListEnvelope, type CompanyMarket, type CompanyMarketRef, type CompanyMarketsListQuery, type CompanySalary, type CompanySimilarQuery, type CreateBoardClientOptions, type CreateJobPostingInput, type CustomStorage, type EducationRequirement, type EmbedJobsQuery, type EmploymentType, type FetchOptions, type ForgotPasswordBody, type JobAlertConfirmation, type JobAlertDeletePreferenceInput, type JobAlertFiltersInput, type JobAlertFrequency, type JobAlertManageQuery, type JobAlertManageResult, type JobAlertManageState, type JobAlertManageTokenInput, type JobAlertPreference, type JobAlertRemoteOption, type JobAlertResendResult, type JobAlertStoredFilters, type JobAlertSubscribeInput, type JobAlertSubscription, type JobAlertUpdatePreferenceInput, type JobCardListEnvelope, type JobCardSearchEnvelope, type JobCompany, type JobPostingBillingCheck, type JobPostingBillingOptions, type JobPostingBillingVerification, type JobPostingLogoResult, type JobPostingPlan, type JobPostingResult, type JobPostingSubscriptionEntitlements, type JobSort, type JobsListQuery, type JobsSearchBody, type LegalEntity, type LegalPageType, type ListEnvelope, type LocationSalaryDetail, type LocationSkillsIndex, type LocationTitlesIndex, type Logger, type LoginBody, type LogoutBody, type OfficeLocation, type PlacesListQuery, type Plan, type PlanListEnvelope, type PlansListQuery, type PublicBlogAdjacentPosts, type PublicBlogAuthor, type PublicBlogPost, type PublicBlogPostSummary, type PublicBlogTag, type PublicBoard, type PublicBoardAnalytics, type PublicBoardFeatures, type PublicBoardTheme, type PublicCompany, type PublicCompanyDetail, type PublicJob, type PublicJobCard, type PublicLegalPage, type PublicPlace, REFRESH_TOKEN_KEY, type RedirectResolution, type RefreshBody, type RegisterBody, type RelatedSearch, type RemoteOption, type RemotePermit, type RemoteTimezone, type ResetPasswordBody, SDK_VERSION, type SalaryCompany, type SalaryDetailQuery, type SalaryLocation, type SalarySkill, type SalaryTitle, type SalesLedPlan, type SalesLedPlanListEnvelope, type SaveJobBody, type SavedJob, type SavedJobsListQuery, type SearchEnvelope, type Seniority, type SkillLocationSalary, type SkillLocationsIndex, type SkillSalaryDetail, type StorageMode, type StorefrontPagination, type TalentDirectoryEntry, type TalentDirectoryListEnvelope, type TalentDirectoryQuery, type TalentProfile, type TaxonomyGeo, type TaxonomyResolution, type TitleLocationSalary, type TitleLocationsIndex, type TitleSalaryDetail, type VerifyEmailBody, createBoardClient, isBoardApiError, isBoardPasswordRequired, isConflict, isForbidden, isNotFound, isRateLimited, isUnauthorized, isValidationError };
|
|
5006
|
+
export { ACCESS_TOKEN_KEY, type Awaitable, BOARD_ACCESS_GRANT_KEY, type BlogAuthorEmbed, type BlogPostsListQuery, type BlogSearchBody, type BlogSimilarQuery, type BlogTagEmbed, type BoardAccessGrant, BoardApiError, type BoardAuthSession, BoardClient, type BoardRequest, type BoardSdk, type BoardSeo, type BoardUser, type CandidateAvatar, type CandidateEducation, type CandidateExperience, type CandidateLanguage, type CandidateProfile, type CandidateSkill, type CompaniesListQuery, type CompaniesSearchBody, type CompanyCategorySalary, type CompanyJobsListQuery, type CompanyListEnvelope, type CompanyMarket, type CompanyMarketRef, type CompanyMarketsListQuery, type CompanySalary, type CompanySimilarQuery, type ConsumeMagicLinkBody, type CreateBoardClientOptions, type CreateEducationBody, type CreateExperienceBody, type CreateJobPostingInput, type CustomStorage, type EducationRequirement, type EmbedJobsQuery, type EmploymentType, type FetchOptions, type ForgotPasswordBody, type HandleAvailability, type JobAlertConfirmation, type JobAlertDeletePreferenceInput, type JobAlertFiltersInput, type JobAlertFrequency, type JobAlertManageQuery, type JobAlertManageResult, type JobAlertManageState, type JobAlertManageTokenInput, type JobAlertPreference, type JobAlertRemoteOption, type JobAlertResendResult, type JobAlertStoredFilters, type JobAlertSubscribeInput, type JobAlertSubscription, type JobAlertUpdatePreferenceInput, type JobCardListEnvelope, type JobCardSearchEnvelope, type JobCompany, type JobPostingBillingCheck, type JobPostingBillingOptions, type JobPostingBillingVerification, type JobPostingLogoResult, type JobPostingPlan, type JobPostingResult, type JobPostingSubscriptionEntitlements, type JobSort, type JobsListQuery, type JobsSearchBody, type LegalEntity, type LegalPageType, type ListEnvelope, type LocationSalaryDetail, type LocationSkillsIndex, type LocationTitlesIndex, type Logger, type LoginBody, type LogoutBody, type NotificationPreference, type OAuthAuthorizationQuery, type OAuthAuthorizationUrl, type OAuthExchangeBody, type OAuthProvider, type OfficeLocation, type PlacesListQuery, type Plan, type PlanListEnvelope, type PlansListQuery, type PublicBlogAdjacentPosts, type PublicBlogAuthor, type PublicBlogPost, type PublicBlogPostSummary, type PublicBlogTag, type PublicBoard, type PublicBoardAnalytics, type PublicBoardFeatures, type PublicBoardTheme, type PublicCompany, type PublicCompanyDetail, type PublicJob, type PublicJobCard, type PublicLegalPage, type PublicPlace, REFRESH_TOKEN_KEY, type RedirectResolution, type RefreshBody, type RegisterBody, type RelatedSearch, type RemoteOption, type RemotePermit, type RemoteTimezone, type RequestMagicLinkBody, type ResetPasswordBody, SDK_VERSION, type SalaryCompany, type SalaryDetailQuery, type SalaryLocation, type SalarySkill, type SalaryTitle, type SalesLedPlan, type SalesLedPlanListEnvelope, type SaveJobBody, type SavedJob, type SavedJobsListQuery, type SearchEnvelope, type Seniority, type SkillLocationSalary, type SkillLocationsIndex, type SkillSalaryDetail, type StorageMode, type StorefrontPagination, type TalentDirectoryEntry, type TalentDirectoryListEnvelope, type TalentDirectoryQuery, type TalentProfile, type TaxonomyGeo, type TaxonomyResolution, type TitleLocationSalary, type TitleLocationsIndex, type TitleSalaryDetail, type UnsubscribeBody, type UpdateCandidateProfileBody, type UpdateEducationBody, type UpdateExperienceBody, type UpdateLanguagesBody, type UpdateNotificationPreferenceBody, type UpdateSkillsBody, type VerifyEmailBody, createBoardClient, isBoardApiError, isBoardPasswordRequired, isConflict, isForbidden, isNotFound, isRateLimited, isUnauthorized, isValidationError };
|