@cavuno/board 1.39.0 → 1.40.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/{_spec-DxC1ze93.d.mts → _spec-DRbgPIlN.d.mts} +351 -0
- package/dist/{_spec-DxC1ze93.d.ts → _spec-DRbgPIlN.d.ts} +351 -0
- package/dist/bin.mjs +242 -18
- package/dist/{board-RfZEAJse.d.ts → board-BxPUtrOl.d.ts} +1 -1
- package/dist/{board-CqYibYUA.d.mts → board-DCiNpgFf.d.mts} +1 -1
- package/dist/doctor.js +238 -14
- package/dist/doctor.mjs +238 -14
- package/dist/filters.d.mts +2 -2
- package/dist/filters.d.ts +2 -2
- package/dist/format.d.mts +3 -3
- package/dist/format.d.ts +3 -3
- package/dist/index.d.mts +55 -10
- package/dist/index.d.ts +55 -10
- package/dist/index.js +50 -1
- package/dist/index.mjs +50 -1
- package/dist/{jobs-CLLIvtMc.d.ts → jobs-DAGAVHQL.d.ts} +1 -1
- package/dist/{jobs-DPPA1Nev.d.mts → jobs-DhePKSRe.d.mts} +1 -1
- package/dist/{salaries-Rb5h_eVZ.d.mts → salaries-D6SUVMmt.d.mts} +2 -2
- package/dist/{salaries-DK4RnJnw.d.ts → salaries-cqb78kg0.d.ts} +2 -2
- package/dist/{search-DBoMM-gE.d.ts → search-BalPAS0P.d.ts} +1 -1
- package/dist/{search-CqBa1Qc4.d.mts → search-DYUQzCq_.d.mts} +1 -1
- package/dist/seo.d.mts +4 -4
- package/dist/seo.d.ts +4 -4
- package/dist/server.d.mts +56 -6
- package/dist/server.d.ts +56 -6
- package/dist/server.js +41 -0
- package/dist/server.mjs +41 -0
- package/dist/sitemap.d.mts +5 -5
- package/dist/sitemap.d.ts +5 -5
- package/dist/suggest.d.mts +2 -2
- package/dist/suggest.d.ts +2 -2
- package/dist/theme.d.mts +49 -1
- package/dist/theme.d.ts +49 -1
- package/dist/theme.js +60 -26
- package/dist/theme.mjs +60 -26
- package/package.json +1 -1
- package/skills/manifest.json +1 -1
|
@@ -86,6 +86,31 @@ interface components {
|
|
|
86
86
|
*/
|
|
87
87
|
admin: string;
|
|
88
88
|
};
|
|
89
|
+
AdminPlan: {
|
|
90
|
+
/** @description Unique identifier for the plan. */
|
|
91
|
+
id: string;
|
|
92
|
+
/** @enum {string} */
|
|
93
|
+
object: "plan";
|
|
94
|
+
name: string;
|
|
95
|
+
description: string | null;
|
|
96
|
+
kind: string;
|
|
97
|
+
/**
|
|
98
|
+
* @description Subscription billing interval. Required for kind=subscription.
|
|
99
|
+
* @enum {string|null}
|
|
100
|
+
*/
|
|
101
|
+
billingInterval: "month" | "year" | null;
|
|
102
|
+
/**
|
|
103
|
+
* @description Whether the plan grants job-posting or talent-access entitlement.
|
|
104
|
+
* @enum {string}
|
|
105
|
+
*/
|
|
106
|
+
purpose: "job_posting" | "talent_access";
|
|
107
|
+
isPublic: boolean;
|
|
108
|
+
isRecommended: boolean;
|
|
109
|
+
isArchived: boolean;
|
|
110
|
+
displayOrder: number | null;
|
|
111
|
+
price: components["schemas"]["PlanPrice"];
|
|
112
|
+
features: components["schemas"]["PlanFeature"][];
|
|
113
|
+
};
|
|
89
114
|
AiUsage: {
|
|
90
115
|
id: string;
|
|
91
116
|
/** @enum {string} */
|
|
@@ -276,6 +301,37 @@ interface components {
|
|
|
276
301
|
resourceId: string;
|
|
277
302
|
})[];
|
|
278
303
|
};
|
|
304
|
+
BillingCheckout: {
|
|
305
|
+
/** @enum {string} */
|
|
306
|
+
object: "billing_checkout";
|
|
307
|
+
funding: components["schemas"]["BillingHostedCheckoutFunding"];
|
|
308
|
+
/**
|
|
309
|
+
* Format: uri
|
|
310
|
+
* @description Hosted Stripe Checkout Session URL.
|
|
311
|
+
*/
|
|
312
|
+
url: string;
|
|
313
|
+
/** @description Stripe Checkout Session id (cs_…). */
|
|
314
|
+
sessionId: string;
|
|
315
|
+
/**
|
|
316
|
+
* @description Self-serve plan key. enterprise is not self-serve and returns plan_not_self_serve.
|
|
317
|
+
* @enum {string}
|
|
318
|
+
*/
|
|
319
|
+
planKey: "starter" | "basic" | "grow" | "advanced" | "enterprise";
|
|
320
|
+
/** @enum {string} */
|
|
321
|
+
interval: "monthly" | "annual";
|
|
322
|
+
};
|
|
323
|
+
BillingCheckoutBody: {
|
|
324
|
+
/**
|
|
325
|
+
* @description Self-serve plan key. enterprise is not self-serve and returns plan_not_self_serve.
|
|
326
|
+
* @enum {string}
|
|
327
|
+
*/
|
|
328
|
+
planKey: "starter" | "basic" | "grow" | "advanced" | "enterprise";
|
|
329
|
+
/**
|
|
330
|
+
* @description Billing interval. Defaults to monthly when omitted.
|
|
331
|
+
* @enum {string}
|
|
332
|
+
*/
|
|
333
|
+
interval?: "monthly" | "annual";
|
|
334
|
+
};
|
|
279
335
|
BillingConnect: {
|
|
280
336
|
/** @enum {string} */
|
|
281
337
|
object: "billing_connect";
|
|
@@ -314,6 +370,14 @@ interface components {
|
|
|
314
370
|
canRemoveBranding: boolean;
|
|
315
371
|
apiAccess: boolean;
|
|
316
372
|
};
|
|
373
|
+
BillingHostedCheckoutFunding: {
|
|
374
|
+
/** @enum {string} */
|
|
375
|
+
type: "hosted_checkout";
|
|
376
|
+
};
|
|
377
|
+
BillingSavedPmFunding: {
|
|
378
|
+
/** @enum {string} */
|
|
379
|
+
type: "saved_pm";
|
|
380
|
+
};
|
|
317
381
|
BillingSubscription: {
|
|
318
382
|
/** @enum {string} */
|
|
319
383
|
object: "billing_subscription";
|
|
@@ -331,6 +395,47 @@ interface components {
|
|
|
331
395
|
stripePriceId: string;
|
|
332
396
|
quantity: number;
|
|
333
397
|
};
|
|
398
|
+
BillingUpgrade: components["schemas"]["BillingUpgradeSavedPm"] | components["schemas"]["BillingUpgradeCheckoutRequired"];
|
|
399
|
+
BillingUpgradeBody: {
|
|
400
|
+
/**
|
|
401
|
+
* @description Self-serve plan key. enterprise is not self-serve and returns plan_not_self_serve.
|
|
402
|
+
* @enum {string}
|
|
403
|
+
*/
|
|
404
|
+
planKey: "starter" | "basic" | "grow" | "advanced" | "enterprise";
|
|
405
|
+
/**
|
|
406
|
+
* @description Billing interval. Defaults to monthly when omitted.
|
|
407
|
+
* @enum {string}
|
|
408
|
+
*/
|
|
409
|
+
interval?: "monthly" | "annual";
|
|
410
|
+
};
|
|
411
|
+
BillingUpgradeCheckoutRequired: {
|
|
412
|
+
/** @enum {string} */
|
|
413
|
+
object: "billing_upgrade";
|
|
414
|
+
funding: components["schemas"]["BillingHostedCheckoutFunding"];
|
|
415
|
+
/** @enum {string} */
|
|
416
|
+
status: "checkout_required";
|
|
417
|
+
/** Format: uri */
|
|
418
|
+
url: string;
|
|
419
|
+
sessionId: string;
|
|
420
|
+
/**
|
|
421
|
+
* @description Self-serve plan key. enterprise is not self-serve and returns plan_not_self_serve.
|
|
422
|
+
* @enum {string}
|
|
423
|
+
*/
|
|
424
|
+
planKey: "starter" | "basic" | "grow" | "advanced" | "enterprise";
|
|
425
|
+
};
|
|
426
|
+
BillingUpgradeSavedPm: {
|
|
427
|
+
/** @enum {string} */
|
|
428
|
+
object: "billing_upgrade";
|
|
429
|
+
funding: components["schemas"]["BillingSavedPmFunding"];
|
|
430
|
+
/** @enum {string} */
|
|
431
|
+
status: "upgraded";
|
|
432
|
+
/**
|
|
433
|
+
* @description Self-serve plan key. enterprise is not self-serve and returns plan_not_self_serve.
|
|
434
|
+
* @enum {string}
|
|
435
|
+
*/
|
|
436
|
+
planKey: "starter" | "basic" | "grow" | "advanced" | "enterprise";
|
|
437
|
+
stripeSubscriptionId: string;
|
|
438
|
+
};
|
|
334
439
|
Block: {
|
|
335
440
|
/** @enum {string} */
|
|
336
441
|
object: "block";
|
|
@@ -1090,6 +1195,21 @@ interface components {
|
|
|
1090
1195
|
object: "conversation_ref";
|
|
1091
1196
|
conversationId: string | null;
|
|
1092
1197
|
};
|
|
1198
|
+
Coupon: {
|
|
1199
|
+
id: string;
|
|
1200
|
+
/** @enum {string} */
|
|
1201
|
+
object: "coupon";
|
|
1202
|
+
name: string | null;
|
|
1203
|
+
percentOff: number | null;
|
|
1204
|
+
amountOff: number | null;
|
|
1205
|
+
currency: string | null;
|
|
1206
|
+
duration: string;
|
|
1207
|
+
durationInMonths: number | null;
|
|
1208
|
+
valid: boolean;
|
|
1209
|
+
appliesTo: string[] | null;
|
|
1210
|
+
timesRedeemed: number;
|
|
1211
|
+
created: string;
|
|
1212
|
+
};
|
|
1093
1213
|
CreateAuthorBody: {
|
|
1094
1214
|
/** @description URL-friendly slug for the author. Auto-generated from `name` when omitted. */
|
|
1095
1215
|
slug?: string;
|
|
@@ -1171,6 +1291,20 @@ interface components {
|
|
|
1171
1291
|
/** @description URL-friendly slug for the company. Auto-generated from `name` when omitted. */
|
|
1172
1292
|
slug?: string;
|
|
1173
1293
|
};
|
|
1294
|
+
CreateCouponBody: {
|
|
1295
|
+
name: string;
|
|
1296
|
+
percentOff?: number | null;
|
|
1297
|
+
/** @description Fixed discount in the currency major unit (e.g. 10 for $10, 1000 for ¥1000). Required with `currency` when there is no percentOff. */
|
|
1298
|
+
amountOff?: number | null;
|
|
1299
|
+
currency?: string | null;
|
|
1300
|
+
/** @enum {string} */
|
|
1301
|
+
duration: "once" | "forever" | "repeating";
|
|
1302
|
+
durationInMonths?: number;
|
|
1303
|
+
maxRedemptions?: number;
|
|
1304
|
+
/** @description Unix ms deadline after which the coupon cannot be redeemed. */
|
|
1305
|
+
redeemBy?: number;
|
|
1306
|
+
appliesToPlanIds?: string[];
|
|
1307
|
+
};
|
|
1174
1308
|
CreateDomainBody: {
|
|
1175
1309
|
/** @description Hostname to bind to this board, for example jobs.acme.com. Labels may contain letters, numbers, and hyphens, and may not start or end with a hyphen. The API normalizes accepted hostnames to lowercase before writing. */
|
|
1176
1310
|
domain: string;
|
|
@@ -1202,6 +1336,15 @@ interface components {
|
|
|
1202
1336
|
description?: string;
|
|
1203
1337
|
sortOrder?: number;
|
|
1204
1338
|
};
|
|
1339
|
+
CreateFeatureBody: {
|
|
1340
|
+
/** @description Stable feature key, e.g. jobs.max_active. */
|
|
1341
|
+
key: string;
|
|
1342
|
+
name: string;
|
|
1343
|
+
/** @description Value data type, e.g. integer or string. */
|
|
1344
|
+
dataType: string;
|
|
1345
|
+
description?: string;
|
|
1346
|
+
defaultValue?: string;
|
|
1347
|
+
};
|
|
1205
1348
|
CreateForagerSubscriptionBody: {
|
|
1206
1349
|
name: string;
|
|
1207
1350
|
rules: components["schemas"]["ForagerRule"][];
|
|
@@ -1409,6 +1552,43 @@ interface components {
|
|
|
1409
1552
|
/** @description The stage label. */
|
|
1410
1553
|
label: string;
|
|
1411
1554
|
};
|
|
1555
|
+
CreatePlanBody: {
|
|
1556
|
+
/** @description Display name for the plan. */
|
|
1557
|
+
name: string;
|
|
1558
|
+
/** @description Optional plan description. */
|
|
1559
|
+
description?: string;
|
|
1560
|
+
/**
|
|
1561
|
+
* @description Plan billing kind.
|
|
1562
|
+
* @enum {string}
|
|
1563
|
+
*/
|
|
1564
|
+
kind: "free" | "one_time" | "bundle" | "subscription";
|
|
1565
|
+
/**
|
|
1566
|
+
* @description Subscription billing interval. Required for kind=subscription.
|
|
1567
|
+
* @enum {string}
|
|
1568
|
+
*/
|
|
1569
|
+
billingInterval?: "month" | "year";
|
|
1570
|
+
/**
|
|
1571
|
+
* @description Whether the plan grants job-posting or talent-access entitlement.
|
|
1572
|
+
* @enum {string}
|
|
1573
|
+
*/
|
|
1574
|
+
purpose?: "job_posting" | "talent_access";
|
|
1575
|
+
/** @description Whether the plan is publicly listed. Defaults to false. */
|
|
1576
|
+
isPublic?: boolean;
|
|
1577
|
+
isRecommended?: boolean;
|
|
1578
|
+
displayOrder?: number;
|
|
1579
|
+
};
|
|
1580
|
+
CreatePromotionCodeBody: {
|
|
1581
|
+
code: string;
|
|
1582
|
+
maxRedemptions?: number;
|
|
1583
|
+
/**
|
|
1584
|
+
* Format: date-time
|
|
1585
|
+
* @description ISO-8601 expiry; converted to epoch seconds for Stripe.
|
|
1586
|
+
*/
|
|
1587
|
+
expiresAt?: string;
|
|
1588
|
+
firstTimeTransaction?: boolean;
|
|
1589
|
+
minimumAmount?: number;
|
|
1590
|
+
minimumAmountCurrency?: string;
|
|
1591
|
+
};
|
|
1412
1592
|
CreateRedirectBody: {
|
|
1413
1593
|
/** @description Source path to match, for example `/old-careers`. */
|
|
1414
1594
|
fromPath: string;
|
|
@@ -1919,6 +2099,25 @@ interface components {
|
|
|
1919
2099
|
hidden: boolean;
|
|
1920
2100
|
position: number;
|
|
1921
2101
|
};
|
|
2102
|
+
EmployerSubscription: {
|
|
2103
|
+
id: string;
|
|
2104
|
+
/** @enum {string} */
|
|
2105
|
+
object: "employer_subscription";
|
|
2106
|
+
employerEmail: string;
|
|
2107
|
+
companyId: string | null;
|
|
2108
|
+
companyName: string | null;
|
|
2109
|
+
planId: string | null;
|
|
2110
|
+
planName: string | null;
|
|
2111
|
+
status: string;
|
|
2112
|
+
/** @description ISO-8601 period end, or null. */
|
|
2113
|
+
currentPeriodEnd: string | null;
|
|
2114
|
+
cancelAtPeriodEnd: boolean;
|
|
2115
|
+
/** @description ISO-8601 creation time. */
|
|
2116
|
+
createdAt: string;
|
|
2117
|
+
stripeCustomerId: string | null;
|
|
2118
|
+
stripeSubscriptionId: string | null;
|
|
2119
|
+
};
|
|
2120
|
+
EmployerSubscriptionOrNull: components["schemas"]["EmployerSubscription"] | unknown | unknown;
|
|
1922
2121
|
EmployerUpdateJobBody: {
|
|
1923
2122
|
/** @description Long-form description of the role. Up to 25,000 characters. */
|
|
1924
2123
|
description?: string;
|
|
@@ -1992,6 +2191,17 @@ interface components {
|
|
|
1992
2191
|
/** @description The job title. */
|
|
1993
2192
|
title?: string;
|
|
1994
2193
|
};
|
|
2194
|
+
FeatureDefinition: {
|
|
2195
|
+
id: string;
|
|
2196
|
+
/** @enum {string} */
|
|
2197
|
+
object: "feature";
|
|
2198
|
+
key: string;
|
|
2199
|
+
name: string;
|
|
2200
|
+
description: string | null;
|
|
2201
|
+
dataType: string;
|
|
2202
|
+
defaultValue: string | null;
|
|
2203
|
+
isSystem: boolean;
|
|
2204
|
+
};
|
|
1995
2205
|
FindOrCreateCompanyBody: {
|
|
1996
2206
|
/** @description The company's display name. */
|
|
1997
2207
|
name: string;
|
|
@@ -2910,6 +3120,10 @@ interface components {
|
|
|
2910
3120
|
requireApprovalAggregatedJobs?: boolean;
|
|
2911
3121
|
/** @description Whether visitors must sign in to view jobs. */
|
|
2912
3122
|
registrationWallEnabled?: boolean;
|
|
3123
|
+
/** @description Whether the board's built-in ATS receives applications. When `false` (external-applications-only board), posting surfaces require an external `applicationUrl` and `POST /boards/:identifier/jobs/:jobSlug/apply` rejects with `applications_native_disabled`. Turning this off UNPUBLISHES every published native-apply job (those with no external `applicationUrl`) back to draft via an asynchronous batched drain — expect published job counts to shrink over the following seconds. Nothing is deleted, and re-enabling does NOT republish the drafted jobs. Absent means `true`. */
|
|
3124
|
+
nativeApplicationsEnabled?: boolean;
|
|
3125
|
+
/** @description Whether applicant↔employer messaging is enabled. When `false`, the `me/conversations` route family rejects with `messaging_disabled` and new-message emails are suppressed. Absent means `true`. */
|
|
3126
|
+
applicantMessagingEnabled?: boolean;
|
|
2913
3127
|
/** @description Legacy shorthand for the talent directory. `true` maps to `talentDirectoryVisibility: "public"`; `false` maps to `"off"`. Prefer the tri-state field. Providing both with conflicting values returns `settings_conflicting_fields`. */
|
|
2914
3128
|
talentDirectoryEnabled?: boolean;
|
|
2915
3129
|
/**
|
|
@@ -2956,6 +3170,34 @@ interface components {
|
|
|
2956
3170
|
[key: string]: unknown;
|
|
2957
3171
|
};
|
|
2958
3172
|
};
|
|
3173
|
+
PaywallGrantAdmin: {
|
|
3174
|
+
id: string;
|
|
3175
|
+
/** @enum {string} */
|
|
3176
|
+
object: "paywall_grant";
|
|
3177
|
+
boardUserId: string;
|
|
3178
|
+
email: string;
|
|
3179
|
+
displayName: string;
|
|
3180
|
+
/** @enum {string} */
|
|
3181
|
+
kind: "recurring" | "one_time";
|
|
3182
|
+
offerKey: string;
|
|
3183
|
+
status: string;
|
|
3184
|
+
stripeCustomerId: string | null;
|
|
3185
|
+
stripeSubscriptionId: string | null;
|
|
3186
|
+
amountCents: number;
|
|
3187
|
+
currency: string;
|
|
3188
|
+
currentPeriodStart: string | null;
|
|
3189
|
+
currentPeriodEnd: string | null;
|
|
3190
|
+
cancelAtPeriodEnd: boolean;
|
|
3191
|
+
activatedAt: string | null;
|
|
3192
|
+
canceledAt: string | null;
|
|
3193
|
+
createdAt: string;
|
|
3194
|
+
};
|
|
3195
|
+
PaywallGrantCount: {
|
|
3196
|
+
/** @enum {string} */
|
|
3197
|
+
object: "paywall_grant_count";
|
|
3198
|
+
cancelableRecurring: number;
|
|
3199
|
+
windingDownRecurring: number;
|
|
3200
|
+
};
|
|
2959
3201
|
PaywallOffer: {
|
|
2960
3202
|
/** @enum {string} */
|
|
2961
3203
|
object: "paywall_offer";
|
|
@@ -2974,6 +3216,26 @@ interface components {
|
|
|
2974
3216
|
intervalCount: number | null;
|
|
2975
3217
|
isDefault: boolean;
|
|
2976
3218
|
};
|
|
3219
|
+
PaywallOfferAdmin: {
|
|
3220
|
+
id: string;
|
|
3221
|
+
/** @enum {string} */
|
|
3222
|
+
object: "paywall_offer";
|
|
3223
|
+
offerKey: string;
|
|
3224
|
+
label: string | null;
|
|
3225
|
+
billingLabel: string | null;
|
|
3226
|
+
/** @enum {string} */
|
|
3227
|
+
kind: "recurring" | "one_time";
|
|
3228
|
+
intervalUnit: string | null;
|
|
3229
|
+
intervalCount: number | null;
|
|
3230
|
+
amountCents: number;
|
|
3231
|
+
currency: string;
|
|
3232
|
+
stripePriceId: string | null;
|
|
3233
|
+
enabled: boolean;
|
|
3234
|
+
isDefault: boolean;
|
|
3235
|
+
displayOrder: number;
|
|
3236
|
+
createdAt: string;
|
|
3237
|
+
};
|
|
3238
|
+
PaywallOfferAdminOrNull: components["schemas"]["PaywallOfferAdmin"] | unknown | unknown;
|
|
2977
3239
|
Permission: {
|
|
2978
3240
|
/** @description Unique identifier for the permission. */
|
|
2979
3241
|
id: string;
|
|
@@ -3022,6 +3284,36 @@ interface components {
|
|
|
3022
3284
|
messagesPerPeriod: string;
|
|
3023
3285
|
};
|
|
3024
3286
|
};
|
|
3287
|
+
PlanFeature: {
|
|
3288
|
+
/** @description Stable feature key, e.g. jobs.max_active. */
|
|
3289
|
+
key: string;
|
|
3290
|
+
name: string | null;
|
|
3291
|
+
value: string | null;
|
|
3292
|
+
dataType: string | null;
|
|
3293
|
+
};
|
|
3294
|
+
PlanFeatureValue: {
|
|
3295
|
+
key: string;
|
|
3296
|
+
value: string;
|
|
3297
|
+
};
|
|
3298
|
+
/** @description The plan single active price, or null when no price has been set. */
|
|
3299
|
+
PlanPrice: {
|
|
3300
|
+
/** @description ISO 4217 currency code, lowercase. */
|
|
3301
|
+
currency: string;
|
|
3302
|
+
/** @description Unit amount in the smallest currency unit. */
|
|
3303
|
+
amountCents: number;
|
|
3304
|
+
stripePriceId: string | null;
|
|
3305
|
+
stripeProductId: string | null;
|
|
3306
|
+
isActive: boolean;
|
|
3307
|
+
} | null;
|
|
3308
|
+
PromotionCode: {
|
|
3309
|
+
id: string;
|
|
3310
|
+
/** @enum {string} */
|
|
3311
|
+
object: "promotion_code";
|
|
3312
|
+
code: string;
|
|
3313
|
+
couponId: string;
|
|
3314
|
+
active: boolean;
|
|
3315
|
+
created: string;
|
|
3316
|
+
};
|
|
3025
3317
|
PublicBlogAdjacentPosts: {
|
|
3026
3318
|
/** @enum {string} */
|
|
3027
3319
|
object: "blog_adjacent_posts";
|
|
@@ -3115,6 +3407,10 @@ interface components {
|
|
|
3115
3407
|
publicJobSubmission: boolean;
|
|
3116
3408
|
candidatePaywall: boolean;
|
|
3117
3409
|
impressum: boolean;
|
|
3410
|
+
/** @description Whether the board accepts native (on-board ATS) applications. `false` means external-applications-only: the server rejects native submissions to `POST /jobs/:jobSlug/apply` with `applications_native_disabled` (422). Clients should hide native apply UI and treat a job with no external `applicationUrl` as not-applyable. */
|
|
3411
|
+
nativeApplications: boolean;
|
|
3412
|
+
/** @description Whether applicant↔employer messaging is enabled on the board. `false` means the `me/conversations` route family rejects with `messaging_disabled` (403) — hide inbox/dock/Message CTAs. */
|
|
3413
|
+
messaging: boolean;
|
|
3118
3414
|
};
|
|
3119
3415
|
/**
|
|
3120
3416
|
* @description The tri-state behind `features.talentDirectory` (which is `visibility === 'public'`). Link /talent whenever this is not `'off'` — an employers-only directory renders a sign-in upsell for anonymous visitors, matching the hosted chrome.
|
|
@@ -3622,6 +3918,9 @@ interface components {
|
|
|
3622
3918
|
RemoveForagerCompanyBody: {
|
|
3623
3919
|
companyUrl: string;
|
|
3624
3920
|
};
|
|
3921
|
+
RenameCouponBody: {
|
|
3922
|
+
name: string;
|
|
3923
|
+
};
|
|
3625
3924
|
ReorderPipelineStagesBody: {
|
|
3626
3925
|
/** @description The job whose stages are reordered. */
|
|
3627
3926
|
jobId: string;
|
|
@@ -3931,6 +4230,19 @@ interface components {
|
|
|
3931
4230
|
/** Format: email */
|
|
3932
4231
|
workEmail: string;
|
|
3933
4232
|
};
|
|
4233
|
+
SetPlanFeaturesBody: {
|
|
4234
|
+
/** @description Full replacement set of feature key/value pairs for the plan. */
|
|
4235
|
+
features: {
|
|
4236
|
+
key: string;
|
|
4237
|
+
value: string;
|
|
4238
|
+
}[];
|
|
4239
|
+
};
|
|
4240
|
+
SetPlanPriceBody: {
|
|
4241
|
+
/** @description ISO 4217 currency code (e.g. usd). */
|
|
4242
|
+
currency: string;
|
|
4243
|
+
/** @description Unit amount in the smallest currency unit. */
|
|
4244
|
+
amountCents: number;
|
|
4245
|
+
};
|
|
3934
4246
|
SettingsAdsenseBody: {
|
|
3935
4247
|
/** @description Whether AdSense placements are rendered on the public board. */
|
|
3936
4248
|
adsenseEnabled?: boolean;
|
|
@@ -4141,6 +4453,9 @@ interface components {
|
|
|
4141
4453
|
StartConversationBody: {
|
|
4142
4454
|
candidateBoardUserId: string;
|
|
4143
4455
|
body: string;
|
|
4456
|
+
} | {
|
|
4457
|
+
candidateHandle: string;
|
|
4458
|
+
body: string;
|
|
4144
4459
|
};
|
|
4145
4460
|
Subscriber: {
|
|
4146
4461
|
/** @description Unique identifier for the subscriber. */
|
|
@@ -4202,6 +4517,18 @@ interface components {
|
|
|
4202
4517
|
items: components["schemas"]["SuggestionItem"][];
|
|
4203
4518
|
};
|
|
4204
4519
|
SuggestionItem: components["schemas"]["CompanySuggestion"] | components["schemas"]["TermSuggestion"];
|
|
4520
|
+
TalentAccess: {
|
|
4521
|
+
/** @enum {string} */
|
|
4522
|
+
object: "talent_access";
|
|
4523
|
+
/** @description Whether the viewer has an approved company membership on this board. */
|
|
4524
|
+
isEmployer: boolean;
|
|
4525
|
+
/** @description Whether this board sells talent access (a public `talent_access` plan exists). When `false` the talent surfaces are not credit-gated for employers. */
|
|
4526
|
+
paywallActive: boolean;
|
|
4527
|
+
/** @description The CTA answer: the viewer is an approved employer AND either the board has no talent paywall or one of their companies holds an active talent_access subscription or a succeeded credit pack. Always `false` for candidates; anonymous viewers get 401. */
|
|
4528
|
+
hasTalentAccess: boolean;
|
|
4529
|
+
/** @description True when any active talent_access subscription carries the unlimited profile-unlock sentinel on its feature snapshot. */
|
|
4530
|
+
hasUnlimitedUnlocks: boolean;
|
|
4531
|
+
};
|
|
4205
4532
|
TalentDirectoryEntry: {
|
|
4206
4533
|
/** @enum {string} */
|
|
4207
4534
|
object: "talent_directory_entry";
|
|
@@ -4240,6 +4567,8 @@ interface components {
|
|
|
4240
4567
|
title: string;
|
|
4241
4568
|
companyName: string;
|
|
4242
4569
|
companyUrl: string | null;
|
|
4570
|
+
/** @description Absolute logo URL for the company, resolved from `companyUrl` the same way the hosted profile renders it; `null` when the company has no usable website. Render a monogram/initials fallback when `null` (and on image error — the URL 404s when the brand has no icon). */
|
|
4571
|
+
companyLogoUrl: string | null;
|
|
4243
4572
|
location: string | null;
|
|
4244
4573
|
employmentType: string | null;
|
|
4245
4574
|
locationType: string | null;
|
|
@@ -4255,6 +4584,8 @@ interface components {
|
|
|
4255
4584
|
education: {
|
|
4256
4585
|
institutionName: string;
|
|
4257
4586
|
institutionUrl: string | null;
|
|
4587
|
+
/** @description Absolute logo URL for the institution, resolved from `institutionUrl` the same way the hosted profile renders it; `null` when the institution has no usable website. Render a monogram/initials fallback when `null` (and on image error). */
|
|
4588
|
+
institutionLogoUrl: string | null;
|
|
4258
4589
|
degree: string | null;
|
|
4259
4590
|
fieldOfStudy: string | null;
|
|
4260
4591
|
grade: string | null;
|
|
@@ -4769,10 +5100,30 @@ interface components {
|
|
|
4769
5100
|
channel: "messageEmails" | "applicationEmails";
|
|
4770
5101
|
subscribed: boolean;
|
|
4771
5102
|
};
|
|
5103
|
+
UpdatePaywallOfferBody: {
|
|
5104
|
+
/** @description Enable or disable the offer. */
|
|
5105
|
+
isEnabled?: boolean;
|
|
5106
|
+
/** @description Alias of isEnabled (either is accepted). */
|
|
5107
|
+
enabled?: boolean;
|
|
5108
|
+
label?: string;
|
|
5109
|
+
billingLabel?: string;
|
|
5110
|
+
displayOrder?: number;
|
|
5111
|
+
isDefault?: boolean;
|
|
5112
|
+
};
|
|
4772
5113
|
UpdatePipelineStageBody: {
|
|
4773
5114
|
label?: string;
|
|
4774
5115
|
hidden?: boolean;
|
|
4775
5116
|
};
|
|
5117
|
+
UpdatePlanBody: {
|
|
5118
|
+
name?: string;
|
|
5119
|
+
description?: string;
|
|
5120
|
+
/** @description Publish/unpublish the plan. */
|
|
5121
|
+
isPublic?: boolean;
|
|
5122
|
+
isRecommended?: boolean;
|
|
5123
|
+
/** @description Archive the plan (soft-delete). There is no hard DELETE. */
|
|
5124
|
+
isArchived?: boolean;
|
|
5125
|
+
displayOrder?: number;
|
|
5126
|
+
};
|
|
4776
5127
|
UpdateRedirectBody: {
|
|
4777
5128
|
/** @description Source path to match, for example `/old-careers`. */
|
|
4778
5129
|
fromPath?: string;
|