@cavuno/board 1.44.0 → 2.0.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-CoL3oYpG.d.mts → _spec-C7vqY_b3.d.mts} +532 -626
- package/dist/{_spec-CoL3oYpG.d.ts → _spec-C7vqY_b3.d.ts} +532 -626
- package/dist/bin.mjs +22 -1
- package/dist/{board-DZCw7A6P.d.ts → board-B8tJGX4i.d.ts} +1 -1
- package/dist/{board-BwFW1aU2.d.mts → board-DmRuCA8m.d.mts} +1 -1
- package/dist/doctor.js +22 -1
- package/dist/doctor.mjs +22 -1
- 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 +9 -9
- package/dist/index.d.ts +9 -9
- package/dist/index.js +1 -1
- package/dist/index.mjs +1 -1
- package/dist/{jobs-BVazo4mA.d.ts → jobs-BEYJY97F.d.ts} +1 -1
- package/dist/{jobs-CSMshXGV.d.mts → jobs-DJiISpqX.d.mts} +1 -1
- package/dist/{salaries-IJlchnWk.d.mts → salaries-B_Xb5k2s.d.mts} +2 -2
- package/dist/{salaries-DMQsjLrV.d.ts → salaries-D6q7h1J6.d.ts} +2 -2
- package/dist/{search-B7gr_wOd.d.ts → search-CnOIZEuc.d.ts} +1 -1
- package/dist/{search-B6FJifRE.d.mts → search-uC_ijbdu.d.mts} +1 -1
- package/dist/seo.d.mts +4 -4
- package/dist/seo.d.ts +4 -4
- package/dist/server.d.mts +5 -5
- package/dist/server.d.ts +5 -5
- 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/package.json +1 -1
- package/skills/manifest.json +1 -1
|
@@ -63,15 +63,6 @@ interface components {
|
|
|
63
63
|
AddCategoryAliasesBody: {
|
|
64
64
|
aliases: string[];
|
|
65
65
|
};
|
|
66
|
-
AddForagerCompanyBody: {
|
|
67
|
-
companyUrl: string;
|
|
68
|
-
companyName: string;
|
|
69
|
-
description?: string | null;
|
|
70
|
-
};
|
|
71
|
-
AddForagerExclusionBody: {
|
|
72
|
-
pattern: string;
|
|
73
|
-
type: string;
|
|
74
|
-
};
|
|
75
66
|
AddMarketAliasesBody: {
|
|
76
67
|
aliases: string[];
|
|
77
68
|
};
|
|
@@ -111,21 +102,21 @@ interface components {
|
|
|
111
102
|
price: components["schemas"]["PlanPrice"];
|
|
112
103
|
features: components["schemas"]["PlanFeature"][];
|
|
113
104
|
};
|
|
114
|
-
|
|
105
|
+
AdminSalesLedPlan: {
|
|
106
|
+
/** @description Cavuno salesLedEmployerPlans ID. */
|
|
115
107
|
id: string;
|
|
116
108
|
/** @enum {string} */
|
|
117
|
-
object: "
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
|
|
126
|
-
|
|
127
|
-
|
|
128
|
-
remaining: number;
|
|
109
|
+
object: "sales_led_plan";
|
|
110
|
+
name: string;
|
|
111
|
+
description: string;
|
|
112
|
+
priceText: string;
|
|
113
|
+
ctaText: string;
|
|
114
|
+
ctaDestination: string;
|
|
115
|
+
featuredBullets: string[];
|
|
116
|
+
isPublic: boolean;
|
|
117
|
+
displayOrder: number;
|
|
118
|
+
/** @description ISO-8601 creation timestamp. */
|
|
119
|
+
createdAt: string;
|
|
129
120
|
};
|
|
130
121
|
Alert: {
|
|
131
122
|
/** @description Job-alert preference ID. Also the path key. */
|
|
@@ -163,30 +154,89 @@ interface components {
|
|
|
163
154
|
salaryMax?: number | null;
|
|
164
155
|
salaryCurrency?: string | null;
|
|
165
156
|
};
|
|
166
|
-
|
|
167
|
-
|
|
168
|
-
|
|
169
|
-
|
|
170
|
-
|
|
171
|
-
|
|
172
|
-
|
|
173
|
-
|
|
174
|
-
/** @description
|
|
175
|
-
|
|
176
|
-
|
|
177
|
-
|
|
178
|
-
/** @
|
|
179
|
-
|
|
180
|
-
/** @
|
|
181
|
-
|
|
182
|
-
/** @description
|
|
183
|
-
|
|
184
|
-
|
|
185
|
-
|
|
186
|
-
|
|
187
|
-
|
|
188
|
-
|
|
189
|
-
|
|
157
|
+
AnalyticsChange: {
|
|
158
|
+
absolute: number;
|
|
159
|
+
/** @description Null when both periods are zero (undefined percent change). */
|
|
160
|
+
percentage: number | null;
|
|
161
|
+
};
|
|
162
|
+
AnalyticsDateRange: {
|
|
163
|
+
/** @description UTC date-only YYYY-MM-DD. */
|
|
164
|
+
start: string;
|
|
165
|
+
/** @description UTC date-only YYYY-MM-DD. */
|
|
166
|
+
end: string;
|
|
167
|
+
};
|
|
168
|
+
AnalyticsMetric: {
|
|
169
|
+
/** @enum {string} */
|
|
170
|
+
key: "sessions" | "page_views" | "average_session_duration" | "job_apply_clicks" | "impressions" | "stripe_revenue" | "adsense_revenue";
|
|
171
|
+
/** @enum {string} */
|
|
172
|
+
unit: "count" | "seconds" | "currency";
|
|
173
|
+
/** @description ISO currency code in lowercase when unit is currency. */
|
|
174
|
+
currency?: string;
|
|
175
|
+
current: {
|
|
176
|
+
total: number;
|
|
177
|
+
change: components["schemas"]["AnalyticsChange"];
|
|
178
|
+
points: components["schemas"]["AnalyticsTrendPoint"][];
|
|
179
|
+
};
|
|
180
|
+
previous: {
|
|
181
|
+
total: number;
|
|
182
|
+
points: components["schemas"]["AnalyticsTrendPoint"][];
|
|
183
|
+
};
|
|
184
|
+
/** @description Latest available day for lagging providers (GSC/AdSense) when the window tail is incomplete. */
|
|
185
|
+
dataAvailableThrough?: string;
|
|
186
|
+
};
|
|
187
|
+
AnalyticsOverview: {
|
|
188
|
+
/** @enum {string} */
|
|
189
|
+
object: "analytics_overview";
|
|
190
|
+
range: components["schemas"]["AnalyticsDateRange"];
|
|
191
|
+
comparisonRange: components["schemas"]["AnalyticsDateRange"];
|
|
192
|
+
/** @description Realtime visitors on the board right now. */
|
|
193
|
+
currentVisitors: number;
|
|
194
|
+
metrics: components["schemas"]["AnalyticsMetric"][];
|
|
195
|
+
};
|
|
196
|
+
AnalyticsTraffic: {
|
|
197
|
+
/** @enum {string} */
|
|
198
|
+
object: "analytics_traffic";
|
|
199
|
+
range: components["schemas"]["AnalyticsTrafficDateRange"];
|
|
200
|
+
pages: components["schemas"]["AnalyticsTrafficPage"][];
|
|
201
|
+
sources: components["schemas"]["AnalyticsTrafficSource"][];
|
|
202
|
+
locations: components["schemas"]["AnalyticsTrafficLocation"][];
|
|
203
|
+
devices: components["schemas"]["AnalyticsTrafficDevice"][];
|
|
204
|
+
};
|
|
205
|
+
AnalyticsTrafficDateRange: {
|
|
206
|
+
/** @description UTC date-only YYYY-MM-DD. */
|
|
207
|
+
start: string;
|
|
208
|
+
/** @description UTC date-only YYYY-MM-DD. */
|
|
209
|
+
end: string;
|
|
210
|
+
};
|
|
211
|
+
AnalyticsTrafficDevice: {
|
|
212
|
+
device: string;
|
|
213
|
+
visits: number;
|
|
214
|
+
visitsChangePercentage: number | null;
|
|
215
|
+
applyClicks: number;
|
|
216
|
+
};
|
|
217
|
+
AnalyticsTrafficLocation: {
|
|
218
|
+
countryCode: string;
|
|
219
|
+
visits: number;
|
|
220
|
+
visitsChangePercentage: number | null;
|
|
221
|
+
applyClicks: number;
|
|
222
|
+
};
|
|
223
|
+
AnalyticsTrafficPage: {
|
|
224
|
+
pathname: string;
|
|
225
|
+
visits: number;
|
|
226
|
+
visitsChangePercentage: number | null;
|
|
227
|
+
};
|
|
228
|
+
AnalyticsTrafficSource: {
|
|
229
|
+
/** @description Normalized referrer source (never a full URL). */
|
|
230
|
+
source: string;
|
|
231
|
+
visits: number;
|
|
232
|
+
visitsChangePercentage: number | null;
|
|
233
|
+
applyClicks: number;
|
|
234
|
+
};
|
|
235
|
+
AnalyticsTrendPoint: {
|
|
236
|
+
/** @description UTC date-only YYYY-MM-DD. */
|
|
237
|
+
date: string;
|
|
238
|
+
/** @description Metric value for the day, or null when a lagging provider has not reported yet. */
|
|
239
|
+
value: number | null;
|
|
190
240
|
};
|
|
191
241
|
Application: {
|
|
192
242
|
/** @description Application ID. Also the `:applicationId` path key. */
|
|
@@ -226,58 +276,71 @@ interface components {
|
|
|
226
276
|
/** @description Optional intended role for the approved employer, recorded in the audit log. Not yet persisted (companyMembers has no role field). */
|
|
227
277
|
role?: string;
|
|
228
278
|
};
|
|
229
|
-
|
|
230
|
-
|
|
279
|
+
BackfillBulkItemResult: {
|
|
280
|
+
companyId: string;
|
|
281
|
+
/** @enum {string} */
|
|
282
|
+
status: "ok" | "error";
|
|
283
|
+
error?: {
|
|
284
|
+
code: string;
|
|
285
|
+
message: string;
|
|
286
|
+
};
|
|
287
|
+
};
|
|
288
|
+
BackfillBulkResult: {
|
|
289
|
+
/** @enum {string} */
|
|
290
|
+
object: "backfill_bulk_result";
|
|
291
|
+
data: components["schemas"]["BackfillBulkItemResult"][];
|
|
292
|
+
};
|
|
293
|
+
BackfillCompany: {
|
|
294
|
+
/** @enum {string} */
|
|
295
|
+
object: "backfill_company";
|
|
296
|
+
companyId: string;
|
|
297
|
+
name: string;
|
|
298
|
+
website: string | null;
|
|
299
|
+
/** @enum {string} */
|
|
300
|
+
state: "backfilling" | "available" | "needs_match" | "not_backfilling";
|
|
301
|
+
candidates?: components["schemas"]["BackfillMatchCandidate"][];
|
|
302
|
+
};
|
|
303
|
+
BackfillMatchCandidate: {
|
|
304
|
+
index: number;
|
|
305
|
+
name: string;
|
|
306
|
+
website: string | null;
|
|
307
|
+
};
|
|
308
|
+
BackfillProgress: {
|
|
309
|
+
/** @enum {string} */
|
|
310
|
+
object: "backfill_progress";
|
|
311
|
+
/** @enum {string} */
|
|
312
|
+
status: "pending" | "syncing" | "enqueuing" | "enhancing" | "succeeded" | "failed";
|
|
313
|
+
jobsMatched: number;
|
|
314
|
+
jobsToEnhance: number;
|
|
315
|
+
jobsEnhanced: number;
|
|
316
|
+
jobsFailed: number;
|
|
317
|
+
} | null;
|
|
318
|
+
BackfillRule: {
|
|
319
|
+
/** @description Stable Cavuno-owned resource ID. */
|
|
231
320
|
id: string;
|
|
232
|
-
/**
|
|
233
|
-
* @description String representing the object's type. Objects of the same type share the same value.
|
|
234
|
-
* @enum {string}
|
|
235
|
-
*/
|
|
236
|
-
object: "audit_log";
|
|
237
|
-
/** @description Identifier of the account the entry belongs to. */
|
|
238
|
-
accountId: string;
|
|
239
|
-
/**
|
|
240
|
-
* @description Type of actor that performed the action.
|
|
241
|
-
* @enum {string}
|
|
242
|
-
*/
|
|
243
|
-
actorType: "api_key" | "oauth_token" | "user_session" | "system";
|
|
244
|
-
/** @description Identifier of the actor that performed the action. */
|
|
245
|
-
actorId: string;
|
|
246
|
-
/** @description Human-readable label for the actor, suitable for display. */
|
|
247
|
-
actorLabel: string;
|
|
248
|
-
/** @description Action that was performed (e.g. `jobs.create`, `companies.update`). */
|
|
249
|
-
action: string;
|
|
250
|
-
/** @description Type of resource the action was performed on. */
|
|
251
|
-
resourceType: string;
|
|
252
|
-
/** @description Identifier of the resource the action was performed on, or `null` for resource-less actions. */
|
|
253
|
-
resourceId: string | null;
|
|
254
|
-
/** @description Serialized JSON snapshot of the resource before the action, or `null` for create actions. */
|
|
255
|
-
before: string | null;
|
|
256
|
-
/** @description Serialized JSON snapshot of the resource after the action, or `null` for delete actions. */
|
|
257
|
-
after: string | null;
|
|
258
|
-
/** @description Serialized JSON of free-form metadata about the action (e.g. truncation byte sizes), or `null` if none was attached. */
|
|
259
|
-
metadata: string | null;
|
|
260
|
-
/** @description IP address the request originated from, or `null` if unavailable. */
|
|
261
|
-
ipAddress: string | null;
|
|
262
|
-
/** @description User-agent string from the request, or `null` if unavailable. */
|
|
263
|
-
userAgent: string | null;
|
|
264
|
-
/** @description Identifier of the request that produced the entry. Use this to correlate with platform logs. */
|
|
265
|
-
requestId: string;
|
|
266
|
-
/** @description Time at which the audit entry was written. Unix epoch in milliseconds. */
|
|
267
|
-
timestamp: number;
|
|
268
|
-
};
|
|
269
|
-
BatchForagerCompaniesBody: {
|
|
270
|
-
/** @enum {string} */
|
|
271
|
-
mode: "add";
|
|
272
|
-
companies: {
|
|
273
|
-
url: string;
|
|
274
|
-
name: string;
|
|
275
|
-
}[];
|
|
276
|
-
description?: string | null;
|
|
277
|
-
} | {
|
|
278
321
|
/** @enum {string} */
|
|
279
|
-
|
|
280
|
-
|
|
322
|
+
object: "backfill_rule";
|
|
323
|
+
name: string;
|
|
324
|
+
rules: {
|
|
325
|
+
/** @enum {string} */
|
|
326
|
+
match: "any" | "all";
|
|
327
|
+
conditions: {
|
|
328
|
+
/** @enum {string} */
|
|
329
|
+
field: "title" | "description";
|
|
330
|
+
/** @enum {string} */
|
|
331
|
+
operator: "contains_any" | "contains_all" | "is_not";
|
|
332
|
+
terms: string[];
|
|
333
|
+
}[];
|
|
334
|
+
}[];
|
|
335
|
+
filters: {
|
|
336
|
+
countries?: string[];
|
|
337
|
+
subdivisions?: string[];
|
|
338
|
+
seniorities?: string[];
|
|
339
|
+
employmentTypes?: string[];
|
|
340
|
+
workplaceTypes?: string[];
|
|
341
|
+
};
|
|
342
|
+
createdAt: string | null;
|
|
343
|
+
updatedAt: string | null;
|
|
281
344
|
};
|
|
282
345
|
BatchRequestBody: {
|
|
283
346
|
/** @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. */
|
|
@@ -307,11 +370,9 @@ interface components {
|
|
|
307
370
|
funding: components["schemas"]["BillingHostedCheckoutFunding"];
|
|
308
371
|
/**
|
|
309
372
|
* Format: uri
|
|
310
|
-
* @description
|
|
373
|
+
* @description Short-lived hosted checkout URL.
|
|
311
374
|
*/
|
|
312
375
|
url: string;
|
|
313
|
-
/** @description Stripe Checkout Session id (cs_…). */
|
|
314
|
-
sessionId: string;
|
|
315
376
|
/**
|
|
316
377
|
* @description Self-serve plan key. enterprise is not self-serve and returns plan_not_self_serve.
|
|
317
378
|
* @enum {string}
|
|
@@ -336,105 +397,58 @@ interface components {
|
|
|
336
397
|
/** @enum {string} */
|
|
337
398
|
object: "billing_connect";
|
|
338
399
|
connected: boolean;
|
|
339
|
-
|
|
340
|
-
chargesEnabled: boolean;
|
|
400
|
+
acceptingPayments: boolean;
|
|
341
401
|
payoutsEnabled: boolean;
|
|
342
402
|
detailsSubmitted: boolean;
|
|
343
|
-
|
|
344
|
-
};
|
|
345
|
-
BillingConnectRequirements: {
|
|
346
|
-
currentlyDue: string[];
|
|
347
|
-
eventuallyDue: string[];
|
|
348
|
-
pastDue: string[];
|
|
349
|
-
disabledReason: string | null;
|
|
350
|
-
/** @description Unix timestamp (seconds) from Stripe, or null. */
|
|
351
|
-
currentDeadline: number | null;
|
|
352
|
-
} | null;
|
|
353
|
-
BillingEntitlements: {
|
|
354
|
-
/** @enum {string} */
|
|
355
|
-
object: "billing_entitlements";
|
|
356
|
-
/** @description Platform plan slug, or 'unknown' when absent. */
|
|
357
|
-
planKey: string;
|
|
358
|
-
limits: components["schemas"]["BillingEntitlementsLimits"];
|
|
359
|
-
/**
|
|
360
|
-
* @description Whether the stored flat limits came from the plan defaults or a staff override.
|
|
361
|
-
* @enum {string|null}
|
|
362
|
-
*/
|
|
363
|
-
limitsSource: "plan" | "override" | null;
|
|
364
|
-
};
|
|
365
|
-
BillingEntitlementsLimits: {
|
|
366
|
-
activeJobs: number | null;
|
|
367
|
-
subscribers: number | null;
|
|
368
|
-
teamSeats: number | null;
|
|
369
|
-
canBePublic: boolean;
|
|
370
|
-
canRemoveBranding: boolean;
|
|
371
|
-
apiAccess: boolean;
|
|
403
|
+
actionRequired: boolean;
|
|
372
404
|
};
|
|
373
405
|
BillingHostedCheckoutFunding: {
|
|
374
406
|
/** @enum {string} */
|
|
375
407
|
type: "hosted_checkout";
|
|
376
408
|
};
|
|
377
|
-
BillingSavedPmFunding: {
|
|
378
|
-
/** @enum {string} */
|
|
379
|
-
type: "saved_pm";
|
|
380
|
-
};
|
|
381
409
|
BillingSubscription: {
|
|
382
410
|
/** @enum {string} */
|
|
383
411
|
object: "billing_subscription";
|
|
384
412
|
active: boolean;
|
|
385
413
|
status: string | null;
|
|
386
|
-
|
|
387
|
-
stripeSubscriptionId: string | null;
|
|
388
|
-
stripeCustomerId: string | null;
|
|
414
|
+
planKey: string | null;
|
|
389
415
|
/** @description Subscription period end as a millisecond epoch. */
|
|
390
416
|
currentPeriodEnd: number | null;
|
|
391
417
|
cancelAtPeriodEnd: boolean;
|
|
392
|
-
|
|
393
|
-
|
|
394
|
-
|
|
395
|
-
|
|
396
|
-
|
|
397
|
-
|
|
398
|
-
|
|
399
|
-
|
|
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";
|
|
418
|
+
capabilities: {
|
|
419
|
+
activeJobsLimit: number | null;
|
|
420
|
+
subscriberLimit: number | null;
|
|
421
|
+
teamSeatLimit: number | null;
|
|
422
|
+
canBePublic: boolean;
|
|
423
|
+
canRemoveBranding: boolean;
|
|
424
|
+
apiAccess: boolean;
|
|
425
|
+
};
|
|
410
426
|
};
|
|
411
|
-
|
|
427
|
+
BillingUpgrade: {
|
|
412
428
|
/** @enum {string} */
|
|
413
429
|
object: "billing_upgrade";
|
|
414
430
|
funding: components["schemas"]["BillingHostedCheckoutFunding"];
|
|
415
431
|
/** @enum {string} */
|
|
416
|
-
status: "
|
|
432
|
+
status: "human_action_required";
|
|
417
433
|
/** Format: uri */
|
|
418
434
|
url: string;
|
|
419
|
-
sessionId: string;
|
|
420
435
|
/**
|
|
421
436
|
* @description Self-serve plan key. enterprise is not self-serve and returns plan_not_self_serve.
|
|
422
437
|
* @enum {string}
|
|
423
438
|
*/
|
|
424
439
|
planKey: "starter" | "basic" | "grow" | "advanced" | "enterprise";
|
|
425
440
|
};
|
|
426
|
-
|
|
427
|
-
/** @enum {string} */
|
|
428
|
-
object: "billing_upgrade";
|
|
429
|
-
funding: components["schemas"]["BillingSavedPmFunding"];
|
|
430
|
-
/** @enum {string} */
|
|
431
|
-
status: "upgraded";
|
|
441
|
+
BillingUpgradeBody: {
|
|
432
442
|
/**
|
|
433
443
|
* @description Self-serve plan key. enterprise is not self-serve and returns plan_not_self_serve.
|
|
434
444
|
* @enum {string}
|
|
435
445
|
*/
|
|
436
446
|
planKey: "starter" | "basic" | "grow" | "advanced" | "enterprise";
|
|
437
|
-
|
|
447
|
+
/**
|
|
448
|
+
* @description Billing interval. Defaults to monthly when omitted.
|
|
449
|
+
* @enum {string}
|
|
450
|
+
*/
|
|
451
|
+
interval?: "monthly" | "annual";
|
|
438
452
|
};
|
|
439
453
|
Block: {
|
|
440
454
|
/** @enum {string} */
|
|
@@ -650,18 +664,6 @@ interface components {
|
|
|
650
664
|
BoardAuthVerifyEmailBody: {
|
|
651
665
|
token: string;
|
|
652
666
|
};
|
|
653
|
-
BoardContentBody: {
|
|
654
|
-
/** @description The board name. */
|
|
655
|
-
boardName: string;
|
|
656
|
-
/** @description Optional board description to steer the copy. */
|
|
657
|
-
boardDescription?: string;
|
|
658
|
-
};
|
|
659
|
-
BoardRulesBody: {
|
|
660
|
-
/** @description The board name. */
|
|
661
|
-
boardName: string;
|
|
662
|
-
/** @description Optional board description to steer the scraping rules. */
|
|
663
|
-
boardDescription?: string;
|
|
664
|
-
};
|
|
665
667
|
BoardSeo: {
|
|
666
668
|
/** @enum {string} */
|
|
667
669
|
object: "board_seo";
|
|
@@ -691,16 +693,6 @@ interface components {
|
|
|
691
693
|
themeColor: string;
|
|
692
694
|
};
|
|
693
695
|
};
|
|
694
|
-
BoardThemeBody: {
|
|
695
|
-
/** @description The board name. */
|
|
696
|
-
boardName: string;
|
|
697
|
-
/** @description Optional board description to steer the palette + fonts. */
|
|
698
|
-
boardDescription?: string;
|
|
699
|
-
};
|
|
700
|
-
BoardToneBody: {
|
|
701
|
-
/** @description The board name the AI tone/voice profile is generated from. */
|
|
702
|
-
boardName: string;
|
|
703
|
-
};
|
|
704
696
|
BoardUser: {
|
|
705
697
|
/** @description Board user ID. */
|
|
706
698
|
id: string;
|
|
@@ -712,6 +704,10 @@ interface components {
|
|
|
712
704
|
displayName: string | null;
|
|
713
705
|
emailVerified: boolean;
|
|
714
706
|
};
|
|
707
|
+
BulkBackfillCompaniesBody: {
|
|
708
|
+
/** @description Ordered Cavuno company IDs (max 100). Partial success is returned per item. */
|
|
709
|
+
companyIds: string[];
|
|
710
|
+
};
|
|
715
711
|
BulkMoveApplicantsBody: {
|
|
716
712
|
applicationIds: string[];
|
|
717
713
|
/** @description The target stage id. */
|
|
@@ -805,6 +801,84 @@ interface components {
|
|
|
805
801
|
name: string;
|
|
806
802
|
proficiency: string;
|
|
807
803
|
};
|
|
804
|
+
CandidatePaywall: {
|
|
805
|
+
/** @enum {string} */
|
|
806
|
+
object: "candidate_paywall";
|
|
807
|
+
enabled: boolean;
|
|
808
|
+
previewCount: number;
|
|
809
|
+
lockHeading: string;
|
|
810
|
+
lockDescription: string;
|
|
811
|
+
buttonText: string;
|
|
812
|
+
disclaimerText: string;
|
|
813
|
+
/** @description ISO 4217 currency code, lowercase (e.g. usd). */
|
|
814
|
+
currency: string;
|
|
815
|
+
perMonthLabel: string;
|
|
816
|
+
savingsTemplate: string;
|
|
817
|
+
offers: components["schemas"]["CandidatePaywallOffer"][];
|
|
818
|
+
};
|
|
819
|
+
CandidatePaywallOffer: {
|
|
820
|
+
/** @enum {string} */
|
|
821
|
+
key: "daily" | "weekly" | "monthly" | "quarterly" | "yearly" | "lifetime";
|
|
822
|
+
/** @enum {string} */
|
|
823
|
+
kind: "recurring" | "lifetime";
|
|
824
|
+
enabled: boolean;
|
|
825
|
+
amountCents: number;
|
|
826
|
+
label: string;
|
|
827
|
+
billingLabel: string;
|
|
828
|
+
isDefault: boolean;
|
|
829
|
+
displayOrder: number;
|
|
830
|
+
/** @enum {string|null} */
|
|
831
|
+
intervalUnit: "day" | "week" | "month" | "year" | null;
|
|
832
|
+
intervalCount: number | null;
|
|
833
|
+
};
|
|
834
|
+
CandidatePaywallSubscription: {
|
|
835
|
+
/** @description Cavuno candidate access grant ID. */
|
|
836
|
+
id: string;
|
|
837
|
+
/** @enum {string} */
|
|
838
|
+
object: "candidate_paywall_subscription";
|
|
839
|
+
/** @description Board user / Candidate Cavuno ID (boardUsers id). */
|
|
840
|
+
candidateId: string;
|
|
841
|
+
email: string;
|
|
842
|
+
displayName: string;
|
|
843
|
+
/** @enum {string} */
|
|
844
|
+
kind: "recurring" | "lifetime";
|
|
845
|
+
/**
|
|
846
|
+
* @description One of: daily, weekly, monthly, quarterly, yearly, lifetime.
|
|
847
|
+
* @enum {string}
|
|
848
|
+
*/
|
|
849
|
+
offerKey: "daily" | "weekly" | "monthly" | "quarterly" | "yearly" | "lifetime";
|
|
850
|
+
/** @enum {string} */
|
|
851
|
+
status: "pending" | "active" | "trialing" | "expired" | "past_due" | "unpaid" | "incomplete" | "incomplete_expired" | "canceled";
|
|
852
|
+
amountCents: number;
|
|
853
|
+
/** @description ISO 4217 currency code, lowercase (e.g. usd). */
|
|
854
|
+
currency: string;
|
|
855
|
+
/**
|
|
856
|
+
* Format: date-time
|
|
857
|
+
* @description ISO-8601 or null.
|
|
858
|
+
*/
|
|
859
|
+
currentPeriodStart: string | null;
|
|
860
|
+
/**
|
|
861
|
+
* Format: date-time
|
|
862
|
+
* @description ISO-8601 or null.
|
|
863
|
+
*/
|
|
864
|
+
currentPeriodEnd: string | null;
|
|
865
|
+
cancelAtPeriodEnd: boolean;
|
|
866
|
+
/**
|
|
867
|
+
* Format: date-time
|
|
868
|
+
* @description ISO-8601 or null.
|
|
869
|
+
*/
|
|
870
|
+
activatedAt: string | null;
|
|
871
|
+
/**
|
|
872
|
+
* Format: date-time
|
|
873
|
+
* @description ISO-8601 or null.
|
|
874
|
+
*/
|
|
875
|
+
canceledAt: string | null;
|
|
876
|
+
/**
|
|
877
|
+
* Format: date-time
|
|
878
|
+
* @description ISO-8601 creation time.
|
|
879
|
+
*/
|
|
880
|
+
createdAt: string;
|
|
881
|
+
};
|
|
808
882
|
CandidateProfile: {
|
|
809
883
|
id: string;
|
|
810
884
|
/** @enum {string} */
|
|
@@ -823,10 +897,10 @@ interface components {
|
|
|
823
897
|
jobSearchStatusVisibleTo: "everyone" | "employers_only";
|
|
824
898
|
openToRelocate: boolean;
|
|
825
899
|
};
|
|
826
|
-
/** @description
|
|
900
|
+
/** @description Protected download path and metadata for the uploaded resume, or `null` when no resume is on file (or the storage blob is missing). */
|
|
827
901
|
CandidateResumeFile: {
|
|
828
|
-
/** @description
|
|
829
|
-
|
|
902
|
+
/** @description Stable, permission-protected Cavuno API path for downloading the candidate resume. */
|
|
903
|
+
downloadUrl: string;
|
|
830
904
|
/** @description MIME type of the stored resume file. */
|
|
831
905
|
contentType: string;
|
|
832
906
|
/** @description Size of the resume file in bytes. */
|
|
@@ -858,15 +932,6 @@ interface components {
|
|
|
858
932
|
slug: string;
|
|
859
933
|
website: string | null;
|
|
860
934
|
};
|
|
861
|
-
CollectReportsBody: {
|
|
862
|
-
/** @description Restrict collection to these providers. Omit to collect every enabled provider. */
|
|
863
|
-
providers?: ("search_console" | "adsense" | "tinybird" | "stripe")[];
|
|
864
|
-
/**
|
|
865
|
-
* Format: date-time
|
|
866
|
-
* @description Collect up to this end date (ISO-8601). Defaults to the current day.
|
|
867
|
-
*/
|
|
868
|
-
endDate?: string;
|
|
869
|
-
};
|
|
870
935
|
CompaniesBatchRequest: {
|
|
871
936
|
/** @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. */
|
|
872
937
|
operations: ({
|
|
@@ -1136,11 +1201,8 @@ interface components {
|
|
|
1136
1201
|
};
|
|
1137
1202
|
};
|
|
1138
1203
|
ConfirmImportBody: {
|
|
1139
|
-
/** @description A first-time or revised mapping to persist. Omit to
|
|
1204
|
+
/** @description A first-time or revised mapping review to persist. Omit it to accept the mapping already attached to this Import. */
|
|
1140
1205
|
inlineMapping?: {
|
|
1141
|
-
schemaFingerprint: string;
|
|
1142
|
-
/** @enum {string} */
|
|
1143
|
-
sourceFormat: "csv" | "xml";
|
|
1144
1206
|
fieldMappings: {
|
|
1145
1207
|
sourceColumn: string;
|
|
1146
1208
|
targetField: string;
|
|
@@ -1235,8 +1297,8 @@ interface components {
|
|
|
1235
1297
|
* @enum {string}
|
|
1236
1298
|
*/
|
|
1237
1299
|
status?: "active" | "inactive";
|
|
1238
|
-
/** @description
|
|
1239
|
-
|
|
1300
|
+
/** @description Cavuno media ID of an uploaded avatar image. Pass `null` to clear it. */
|
|
1301
|
+
avatarMediaId?: string | null;
|
|
1240
1302
|
/** @description The author's personal website URL. Normalized to a canonical URL when stored. */
|
|
1241
1303
|
websiteUrl?: string;
|
|
1242
1304
|
/** @description The author's X (Twitter) profile URL. Stored as the canonical `https://x.com/<handle>` URL. */
|
|
@@ -1252,6 +1314,27 @@ interface components {
|
|
|
1252
1314
|
/** @description The author's display name. */
|
|
1253
1315
|
name: string;
|
|
1254
1316
|
};
|
|
1317
|
+
CreateBackfillRuleBody: {
|
|
1318
|
+
name: string;
|
|
1319
|
+
rules: {
|
|
1320
|
+
/** @enum {string} */
|
|
1321
|
+
match: "any" | "all";
|
|
1322
|
+
conditions: {
|
|
1323
|
+
/** @enum {string} */
|
|
1324
|
+
field: "title" | "description";
|
|
1325
|
+
/** @enum {string} */
|
|
1326
|
+
operator: "contains_any" | "contains_all" | "is_not";
|
|
1327
|
+
terms: string[];
|
|
1328
|
+
}[];
|
|
1329
|
+
}[];
|
|
1330
|
+
filters?: {
|
|
1331
|
+
countries?: string[];
|
|
1332
|
+
subdivisions?: string[];
|
|
1333
|
+
seniorities?: ("entry_level" | "associate" | "mid_level" | "senior" | "director" | "executive")[];
|
|
1334
|
+
employmentTypes?: ("full_time" | "part_time" | "contract" | "internship" | "temporary" | "volunteer" | "other")[];
|
|
1335
|
+
workplaceTypes?: ("remote" | "hybrid" | "onsite")[];
|
|
1336
|
+
};
|
|
1337
|
+
};
|
|
1255
1338
|
CreateBlogPostBody: {
|
|
1256
1339
|
slug?: string;
|
|
1257
1340
|
html?: string;
|
|
@@ -1260,8 +1343,8 @@ interface components {
|
|
|
1260
1343
|
featured?: boolean;
|
|
1261
1344
|
authorIds?: string[];
|
|
1262
1345
|
tagIds?: string[];
|
|
1263
|
-
|
|
1264
|
-
|
|
1346
|
+
coverMediaId?: string | null;
|
|
1347
|
+
ogImageMediaId?: string | null;
|
|
1265
1348
|
featureImageAlt?: string;
|
|
1266
1349
|
featureImageCaption?: string;
|
|
1267
1350
|
seoTitle?: string;
|
|
@@ -1346,21 +1429,6 @@ interface components {
|
|
|
1346
1429
|
description?: string;
|
|
1347
1430
|
sortOrder?: number;
|
|
1348
1431
|
};
|
|
1349
|
-
CreateFeatureBody: {
|
|
1350
|
-
/** @description Stable feature key, e.g. jobs.max_active. */
|
|
1351
|
-
key: string;
|
|
1352
|
-
name: string;
|
|
1353
|
-
/** @description Value data type, e.g. integer or string. */
|
|
1354
|
-
dataType: string;
|
|
1355
|
-
description?: string;
|
|
1356
|
-
defaultValue?: string;
|
|
1357
|
-
};
|
|
1358
|
-
CreateForagerSubscriptionBody: {
|
|
1359
|
-
name: string;
|
|
1360
|
-
rules: components["schemas"]["ForagerRule"][];
|
|
1361
|
-
filters?: components["schemas"]["ForagerFilters"];
|
|
1362
|
-
description?: string | null;
|
|
1363
|
-
};
|
|
1364
1432
|
CreateInvitationBody: {
|
|
1365
1433
|
/**
|
|
1366
1434
|
* Format: email
|
|
@@ -1592,7 +1660,7 @@ interface components {
|
|
|
1592
1660
|
maxRedemptions?: number;
|
|
1593
1661
|
/**
|
|
1594
1662
|
* Format: date-time
|
|
1595
|
-
* @description ISO-8601 expiry
|
|
1663
|
+
* @description ISO-8601 expiry for the promotion code.
|
|
1596
1664
|
*/
|
|
1597
1665
|
expiresAt?: string;
|
|
1598
1666
|
firstTimeTransaction?: boolean;
|
|
@@ -1610,6 +1678,20 @@ interface components {
|
|
|
1610
1678
|
*/
|
|
1611
1679
|
statusCode: 301 | 302;
|
|
1612
1680
|
};
|
|
1681
|
+
CreateSalesLedPlanBody: {
|
|
1682
|
+
name: string;
|
|
1683
|
+
description: string;
|
|
1684
|
+
priceText: string;
|
|
1685
|
+
ctaText: string;
|
|
1686
|
+
/** @description Email address or URL. Bare emails become mailto:; bare domains become https://. */
|
|
1687
|
+
ctaDestination: string;
|
|
1688
|
+
/** @description Up to five feature bullets shown on the pricing card. */
|
|
1689
|
+
featuredBullets: string[];
|
|
1690
|
+
/** @description Whether the plan is shown on the public employer pricing page. */
|
|
1691
|
+
isPublic: boolean;
|
|
1692
|
+
/** @description Sort order among active sales-led plans (lower first). */
|
|
1693
|
+
displayOrder: number;
|
|
1694
|
+
};
|
|
1613
1695
|
CreateSkillBody: {
|
|
1614
1696
|
name: string;
|
|
1615
1697
|
slug?: string;
|
|
@@ -2160,10 +2242,7 @@ interface components {
|
|
|
2160
2242
|
cancelAtPeriodEnd: boolean;
|
|
2161
2243
|
/** @description ISO-8601 creation time. */
|
|
2162
2244
|
createdAt: string;
|
|
2163
|
-
stripeCustomerId: string | null;
|
|
2164
|
-
stripeSubscriptionId: string | null;
|
|
2165
2245
|
};
|
|
2166
|
-
EmployerSubscriptionOrNull: components["schemas"]["EmployerSubscription"] | unknown | unknown;
|
|
2167
2246
|
EmployerUpdateJobBody: {
|
|
2168
2247
|
/** @description Long-form description of the role. Up to 25,000 characters. */
|
|
2169
2248
|
description?: string;
|
|
@@ -2250,17 +2329,6 @@ interface components {
|
|
|
2250
2329
|
details?: unknown;
|
|
2251
2330
|
};
|
|
2252
2331
|
};
|
|
2253
|
-
FeatureDefinition: {
|
|
2254
|
-
id: string;
|
|
2255
|
-
/** @enum {string} */
|
|
2256
|
-
object: "feature";
|
|
2257
|
-
key: string;
|
|
2258
|
-
name: string;
|
|
2259
|
-
description: string | null;
|
|
2260
|
-
dataType: string;
|
|
2261
|
-
defaultValue: string | null;
|
|
2262
|
-
isSystem: boolean;
|
|
2263
|
-
};
|
|
2264
2332
|
FindOrCreateCompanyBody: {
|
|
2265
2333
|
/** @description The company's display name. */
|
|
2266
2334
|
name: string;
|
|
@@ -2273,109 +2341,6 @@ interface components {
|
|
|
2273
2341
|
/** @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. */
|
|
2274
2342
|
createIfMissing?: boolean;
|
|
2275
2343
|
};
|
|
2276
|
-
ForagerBackfillProgress: {
|
|
2277
|
-
id: string;
|
|
2278
|
-
/** @enum {string} */
|
|
2279
|
-
object: "forager_backfill_progress";
|
|
2280
|
-
backfillId: string;
|
|
2281
|
-
status: string;
|
|
2282
|
-
progress: {
|
|
2283
|
-
jobsMatched: number;
|
|
2284
|
-
jobsToEnhance: number;
|
|
2285
|
-
jobsEnhanced: number;
|
|
2286
|
-
jobsFailed: number;
|
|
2287
|
-
};
|
|
2288
|
-
errorMessage: string | null;
|
|
2289
|
-
createdAt: string;
|
|
2290
|
-
};
|
|
2291
|
-
ForagerBatchResult: {
|
|
2292
|
-
/** @enum {string} */
|
|
2293
|
-
object: "forager_batch_result";
|
|
2294
|
-
successCount: number;
|
|
2295
|
-
failureCount: number;
|
|
2296
|
-
};
|
|
2297
|
-
ForagerCompany: {
|
|
2298
|
-
/** @enum {string} */
|
|
2299
|
-
object: "forager_company";
|
|
2300
|
-
companyId: string;
|
|
2301
|
-
companyUrl: string;
|
|
2302
|
-
companyName: string;
|
|
2303
|
-
slug: string;
|
|
2304
|
-
about: string | null;
|
|
2305
|
-
atsType: string | null;
|
|
2306
|
-
atsIdentifier: string | null;
|
|
2307
|
-
addedAt: string;
|
|
2308
|
-
};
|
|
2309
|
-
ForagerConfig: {
|
|
2310
|
-
/** @enum {string} */
|
|
2311
|
-
object: "forager_config";
|
|
2312
|
-
configured: boolean;
|
|
2313
|
-
isActive?: boolean;
|
|
2314
|
-
foragerUserId?: string | null;
|
|
2315
|
-
privateVerticalId?: string | null;
|
|
2316
|
-
foragerPlan?: string | null;
|
|
2317
|
-
autoExpireJobs?: boolean;
|
|
2318
|
-
lastSyncedAt?: string | null;
|
|
2319
|
-
hasApiKey?: boolean;
|
|
2320
|
-
hasWebhookSecret?: boolean;
|
|
2321
|
-
};
|
|
2322
|
-
ForagerDescription: {
|
|
2323
|
-
/** @enum {string} */
|
|
2324
|
-
object: "forager_description";
|
|
2325
|
-
description: string | null;
|
|
2326
|
-
};
|
|
2327
|
-
ForagerExclusion: {
|
|
2328
|
-
id: string;
|
|
2329
|
-
/** @enum {string} */
|
|
2330
|
-
object: "forager_exclusion";
|
|
2331
|
-
pattern: string;
|
|
2332
|
-
type: string;
|
|
2333
|
-
createdAt: string;
|
|
2334
|
-
};
|
|
2335
|
-
ForagerFilters: {
|
|
2336
|
-
countries?: string[];
|
|
2337
|
-
subdivisions?: string[];
|
|
2338
|
-
seniorities?: string[];
|
|
2339
|
-
employment_types?: string[];
|
|
2340
|
-
workplace_types?: string[];
|
|
2341
|
-
};
|
|
2342
|
-
ForagerRule: {
|
|
2343
|
-
/** @enum {string} */
|
|
2344
|
-
field: "title" | "description" | "category_list";
|
|
2345
|
-
query: {
|
|
2346
|
-
[key: string]: unknown;
|
|
2347
|
-
};
|
|
2348
|
-
active?: boolean;
|
|
2349
|
-
};
|
|
2350
|
-
ForagerSubscription: {
|
|
2351
|
-
/** @enum {string} */
|
|
2352
|
-
object: "forager_subscription";
|
|
2353
|
-
verticalKey: string;
|
|
2354
|
-
verticalId: string;
|
|
2355
|
-
/** @enum {string} */
|
|
2356
|
-
kind: "role" | "company";
|
|
2357
|
-
name: string;
|
|
2358
|
-
active: boolean;
|
|
2359
|
-
description: string | null;
|
|
2360
|
-
filters?: unknown;
|
|
2361
|
-
rules?: unknown;
|
|
2362
|
-
backfillId?: string;
|
|
2363
|
-
createdAt: string;
|
|
2364
|
-
updatedAt: string;
|
|
2365
|
-
};
|
|
2366
|
-
ForagerSyncRun: {
|
|
2367
|
-
id: string;
|
|
2368
|
-
/** @enum {string} */
|
|
2369
|
-
object: "forager_sync_run";
|
|
2370
|
-
startedAt: string | null;
|
|
2371
|
-
completedAt: string;
|
|
2372
|
-
/** @enum {string} */
|
|
2373
|
-
status: "completed";
|
|
2374
|
-
jobsCreated: number;
|
|
2375
|
-
jobsRepublished: number;
|
|
2376
|
-
companiesCreated: number;
|
|
2377
|
-
totalActive: number;
|
|
2378
|
-
};
|
|
2379
2344
|
HandleAvailability: {
|
|
2380
2345
|
/** @enum {string} */
|
|
2381
2346
|
object: "handle_availability";
|
|
@@ -2396,7 +2361,6 @@ interface components {
|
|
|
2396
2361
|
updatedCount: number;
|
|
2397
2362
|
skippedCount: number;
|
|
2398
2363
|
errorCount: number;
|
|
2399
|
-
mappingId: string | null;
|
|
2400
2364
|
startedAt: string | null;
|
|
2401
2365
|
completedAt: string | null;
|
|
2402
2366
|
createdAt: string;
|
|
@@ -2420,39 +2384,36 @@ interface components {
|
|
|
2420
2384
|
updatedCount: number;
|
|
2421
2385
|
skippedCount: number;
|
|
2422
2386
|
errorCount: number;
|
|
2423
|
-
mappingId: string | null;
|
|
2424
2387
|
startedAt: string | null;
|
|
2425
2388
|
completedAt: string | null;
|
|
2426
2389
|
createdAt: string;
|
|
2427
2390
|
errors: components["schemas"]["ImportBatchError"][];
|
|
2428
|
-
|
|
2429
|
-
|
|
2430
|
-
|
|
2431
|
-
|
|
2432
|
-
|
|
2433
|
-
|
|
2434
|
-
|
|
2435
|
-
|
|
2436
|
-
|
|
2437
|
-
|
|
2438
|
-
|
|
2439
|
-
|
|
2440
|
-
|
|
2441
|
-
|
|
2442
|
-
|
|
2443
|
-
|
|
2444
|
-
|
|
2445
|
-
|
|
2446
|
-
|
|
2447
|
-
|
|
2448
|
-
|
|
2449
|
-
|
|
2450
|
-
|
|
2451
|
-
|
|
2452
|
-
|
|
2453
|
-
|
|
2454
|
-
currency?: string;
|
|
2455
|
-
descriptionFormat?: string;
|
|
2391
|
+
/** @description Typed, operator-reviewable mapping state. Fingerprints, cache identity, AI provenance, and extraction machinery are private. */
|
|
2392
|
+
proposedMapping: {
|
|
2393
|
+
fieldMappings: {
|
|
2394
|
+
sourceColumn: string;
|
|
2395
|
+
targetField: string;
|
|
2396
|
+
confidence: number;
|
|
2397
|
+
notes?: string;
|
|
2398
|
+
}[];
|
|
2399
|
+
defaults: {
|
|
2400
|
+
employmentType?: string;
|
|
2401
|
+
remoteOption?: string;
|
|
2402
|
+
currency?: string;
|
|
2403
|
+
descriptionFormat?: string;
|
|
2404
|
+
};
|
|
2405
|
+
valueTransforms: {
|
|
2406
|
+
sourceColumn: string;
|
|
2407
|
+
targetField: string;
|
|
2408
|
+
map: {
|
|
2409
|
+
[key: string]: string;
|
|
2410
|
+
};
|
|
2411
|
+
fallback?: string;
|
|
2412
|
+
}[];
|
|
2413
|
+
unmappedSourceColumns: string[];
|
|
2414
|
+
missingRequiredTargets: string[];
|
|
2415
|
+
warnings: string[];
|
|
2416
|
+
} | null;
|
|
2456
2417
|
};
|
|
2457
2418
|
ImportQuota: {
|
|
2458
2419
|
/** @enum {string} */
|
|
@@ -2462,14 +2423,6 @@ interface components {
|
|
|
2462
2423
|
limit: number;
|
|
2463
2424
|
resetAt: string;
|
|
2464
2425
|
};
|
|
2465
|
-
ImportValueTransform: {
|
|
2466
|
-
sourceColumn: string;
|
|
2467
|
-
targetField: string;
|
|
2468
|
-
map: {
|
|
2469
|
-
[key: string]: string;
|
|
2470
|
-
};
|
|
2471
|
-
fallback?: string;
|
|
2472
|
-
};
|
|
2473
2426
|
IndexingConfig: {
|
|
2474
2427
|
/** @enum {string} */
|
|
2475
2428
|
id: "indexing_config";
|
|
@@ -2957,6 +2910,12 @@ interface components {
|
|
|
2957
2910
|
sourceLocale: string | null;
|
|
2958
2911
|
createdAt: string;
|
|
2959
2912
|
};
|
|
2913
|
+
MatchBackfillCompanyBody: {
|
|
2914
|
+
/** @description Zero-based index into the short-lived candidates array from list (needs_match). Re-validated server-side. */
|
|
2915
|
+
candidateIndex: number;
|
|
2916
|
+
/** @description When true, start backfill after linking the match; when false, only record the match (available). */
|
|
2917
|
+
start: boolean;
|
|
2918
|
+
};
|
|
2960
2919
|
MediaGet: components["schemas"]["MediaUpload"] & {
|
|
2961
2920
|
/** @description Time at which the file was uploaded. ISO 8601 datetime. */
|
|
2962
2921
|
uploadedAt: string;
|
|
@@ -3015,16 +2974,6 @@ interface components {
|
|
|
3015
2974
|
/** @description Whether the member is the account primary owner. */
|
|
3016
2975
|
isPrimaryOwner: boolean;
|
|
3017
2976
|
};
|
|
3018
|
-
MemberPermissions: {
|
|
3019
|
-
/** @enum {string} */
|
|
3020
|
-
id: "members_me";
|
|
3021
|
-
/** @enum {string} */
|
|
3022
|
-
object: "member_permissions";
|
|
3023
|
-
/** @description The acting member's role, or `null` if they are not a member. */
|
|
3024
|
-
role: string | null;
|
|
3025
|
-
/** @description The permission strings the acting member effectively holds. */
|
|
3026
|
-
permissions: string[];
|
|
3027
|
-
};
|
|
3028
2977
|
Message: {
|
|
3029
2978
|
id: string;
|
|
3030
2979
|
/** @enum {string} */
|
|
@@ -3089,10 +3038,6 @@ interface components {
|
|
|
3089
3038
|
code: string;
|
|
3090
3039
|
/** @description Human-readable error message. */
|
|
3091
3040
|
message: string;
|
|
3092
|
-
/** @description Additional structured details about the error, when present. */
|
|
3093
|
-
details?: unknown;
|
|
3094
|
-
/** @description Identifier of the request that produced the error. Use this to correlate with platform logs. */
|
|
3095
|
-
requestId?: string;
|
|
3096
3041
|
} | null;
|
|
3097
3042
|
/** @description Snapshot of the operation's progress, or `null` if the operation does not report progress. */
|
|
3098
3043
|
OperationProgress: {
|
|
@@ -3113,18 +3058,17 @@ interface components {
|
|
|
3113
3058
|
* @enum {string}
|
|
3114
3059
|
*/
|
|
3115
3060
|
object: "operation";
|
|
3116
|
-
/**
|
|
3117
|
-
|
|
3061
|
+
/**
|
|
3062
|
+
* @description Operation kind, identifying which workflow the operation runs.
|
|
3063
|
+
* @enum {string}
|
|
3064
|
+
*/
|
|
3065
|
+
kind: "domains.verify" | "imports.parse" | "imports.confirm" | "subscribers.export" | "subscribers.import" | "candidates.remove" | "employers.remove";
|
|
3118
3066
|
/**
|
|
3119
3067
|
* @description Current state of the operation.
|
|
3120
3068
|
* @enum {string}
|
|
3121
3069
|
*/
|
|
3122
3070
|
state: "pending" | "running" | "succeeded" | "failed" | "cancelled";
|
|
3123
|
-
/** @description Identifier of the account the operation belongs to. */
|
|
3124
|
-
accountId: string;
|
|
3125
3071
|
progress: components["schemas"]["OperationProgress"];
|
|
3126
|
-
/** @description Operation result, populated once the operation reaches `succeeded`. Shape varies by `kind`. */
|
|
3127
|
-
result?: unknown;
|
|
3128
3072
|
error: components["schemas"]["OperationErrorEnvelope"];
|
|
3129
3073
|
/** @description Time at which the operation was created. ISO 8601 datetime. */
|
|
3130
3074
|
createdAt: string;
|
|
@@ -3134,16 +3078,74 @@ interface components {
|
|
|
3134
3078
|
completedAt: string | null;
|
|
3135
3079
|
/** @description Whether cancellation of the operation has been requested. */
|
|
3136
3080
|
cancelRequested: boolean;
|
|
3137
|
-
/** @description
|
|
3138
|
-
|
|
3139
|
-
|
|
3140
|
-
|
|
3141
|
-
|
|
3142
|
-
|
|
3081
|
+
/** @description Stable product resource affected by the operation, or `null` when no public resource applies. */
|
|
3082
|
+
resource: {
|
|
3083
|
+
/** @enum {string} */
|
|
3084
|
+
object: "company" | "domain" | "import" | "employer" | "candidate";
|
|
3085
|
+
id: string;
|
|
3086
|
+
} | null;
|
|
3143
3087
|
};
|
|
3144
|
-
|
|
3145
|
-
|
|
3146
|
-
|
|
3088
|
+
Operator: {
|
|
3089
|
+
/**
|
|
3090
|
+
* @description String representing the object's type. Objects of the same type share the same value.
|
|
3091
|
+
* @enum {string}
|
|
3092
|
+
*/
|
|
3093
|
+
object: "operator";
|
|
3094
|
+
/** @description The Board the credential is bound to. */
|
|
3095
|
+
board: {
|
|
3096
|
+
/** @description Unique identifier for the Board (account). */
|
|
3097
|
+
id: string;
|
|
3098
|
+
/** @description URL slug of the Board. */
|
|
3099
|
+
slug: string;
|
|
3100
|
+
/** @description Display name of the Board. */
|
|
3101
|
+
name: string;
|
|
3102
|
+
};
|
|
3103
|
+
/** @description The authenticated principal. */
|
|
3104
|
+
actor: {
|
|
3105
|
+
/**
|
|
3106
|
+
* @description How this request authenticated.
|
|
3107
|
+
* @enum {string}
|
|
3108
|
+
*/
|
|
3109
|
+
type: "api_key" | "oauth_token" | "user_session";
|
|
3110
|
+
/** @description Current live membership role. Always `null` for API keys (Board-owned service credentials). Null for OAuth/session only when no live membership remains. */
|
|
3111
|
+
role: string | null;
|
|
3112
|
+
/** @description Current effective product permissions. API keys use the key's explicit scopes; OAuth is the intersection of token scopes and the consenting member's live permissions; sessions use the member's live permissions. */
|
|
3113
|
+
permissions: string[];
|
|
3114
|
+
/** @description Credential scopes for API keys and OAuth tokens. Always `null` for user sessions. */
|
|
3115
|
+
scopes: string[] | null;
|
|
3116
|
+
};
|
|
3117
|
+
};
|
|
3118
|
+
OperatorSettingsConfig: {
|
|
3119
|
+
passwordProtectionEnabled?: boolean;
|
|
3120
|
+
jobAlertsEnabled?: boolean;
|
|
3121
|
+
candidatesEnabled?: boolean;
|
|
3122
|
+
employersEnabled?: boolean;
|
|
3123
|
+
blogEnabled?: boolean;
|
|
3124
|
+
impressumEnabled?: boolean;
|
|
3125
|
+
requireApprovalFreeJobs?: boolean;
|
|
3126
|
+
requireApprovalAggregatedJobs?: boolean;
|
|
3127
|
+
registrationWallEnabled?: boolean;
|
|
3128
|
+
nativeApplicationsEnabled?: boolean;
|
|
3129
|
+
applicantMessagingEnabled?: boolean;
|
|
3130
|
+
requireCookieConsent?: boolean;
|
|
3131
|
+
showCavunoBranding?: boolean;
|
|
3132
|
+
cookieBannerTitle?: string;
|
|
3133
|
+
cookieBannerDescription?: string;
|
|
3134
|
+
cookieBannerRejectLabel?: string;
|
|
3135
|
+
cookieBannerAcceptLabel?: string;
|
|
3136
|
+
cookieBannerManageLabel?: string;
|
|
3137
|
+
talentNavLabel?: string;
|
|
3138
|
+
contactEmail?: string | null;
|
|
3139
|
+
companyLegalName?: string | null;
|
|
3140
|
+
companyAddress?: string | null;
|
|
3141
|
+
companyWebsiteUrl?: string | null;
|
|
3142
|
+
companyXHandle?: string | null;
|
|
3143
|
+
companyFacebookUrl?: string | null;
|
|
3144
|
+
companyLinkedinUrl?: string | null;
|
|
3145
|
+
passwordProtectionMessage?: string | null;
|
|
3146
|
+
defaultJobDurationDays?: number;
|
|
3147
|
+
/** @enum {string} */
|
|
3148
|
+
talentDirectoryVisibility?: "off" | "public" | "employers_only";
|
|
3147
3149
|
};
|
|
3148
3150
|
PatchNotificationPreferencesBody: {
|
|
3149
3151
|
backfillDigest?: boolean;
|
|
@@ -3161,10 +3163,10 @@ interface components {
|
|
|
3161
3163
|
slug?: string;
|
|
3162
3164
|
/** @description Identifier of the custom domain to use as the primary public URL. */
|
|
3163
3165
|
primaryDomainId?: string;
|
|
3164
|
-
/** @description
|
|
3165
|
-
|
|
3166
|
-
/** @description
|
|
3167
|
-
|
|
3166
|
+
/** @description Cavuno media ID returned by `POST /v1/media/upload` with `purpose=board_logo`. */
|
|
3167
|
+
logoMediaId?: string;
|
|
3168
|
+
/** @description Cavuno media ID returned by `POST /v1/media/upload` with `purpose=board_hero`. */
|
|
3169
|
+
heroMediaId?: string;
|
|
3168
3170
|
/** @description Whether the board sits behind a password gate. Use `POST /v1/settings/password-protection` to set the actual password before enabling. */
|
|
3169
3171
|
passwordProtectionEnabled?: boolean;
|
|
3170
3172
|
/** @description Whether candidates can subscribe to email alerts for new jobs. */
|
|
@@ -3179,7 +3181,7 @@ interface components {
|
|
|
3179
3181
|
impressumEnabled?: boolean;
|
|
3180
3182
|
/** @description Whether jobs posted by employers from the free tier require admin approval before they appear on the public board. */
|
|
3181
3183
|
requireApprovalFreeJobs?: boolean;
|
|
3182
|
-
/** @description Whether aggregated jobs (e.g. those
|
|
3184
|
+
/** @description Whether aggregated jobs (e.g. those sourced or imported from upstream sources) require admin approval before they appear on the public board. */
|
|
3183
3185
|
requireApprovalAggregatedJobs?: boolean;
|
|
3184
3186
|
/** @description Whether visitors must sign in to view jobs. */
|
|
3185
3187
|
registrationWallEnabled?: boolean;
|
|
@@ -3228,38 +3230,6 @@ interface components {
|
|
|
3228
3230
|
talentNavLabel?: string;
|
|
3229
3231
|
/** @description Custom copy displayed on the password gate. Up to 500 characters. Pass `null` to clear. */
|
|
3230
3232
|
passwordProtectionMessage?: string | "" | unknown | unknown;
|
|
3231
|
-
/** @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. */
|
|
3232
|
-
config?: {
|
|
3233
|
-
[key: string]: unknown;
|
|
3234
|
-
};
|
|
3235
|
-
};
|
|
3236
|
-
PaywallGrantAdmin: {
|
|
3237
|
-
id: string;
|
|
3238
|
-
/** @enum {string} */
|
|
3239
|
-
object: "paywall_grant";
|
|
3240
|
-
boardUserId: string;
|
|
3241
|
-
email: string;
|
|
3242
|
-
displayName: string;
|
|
3243
|
-
/** @enum {string} */
|
|
3244
|
-
kind: "recurring" | "one_time";
|
|
3245
|
-
offerKey: string;
|
|
3246
|
-
status: string;
|
|
3247
|
-
stripeCustomerId: string | null;
|
|
3248
|
-
stripeSubscriptionId: string | null;
|
|
3249
|
-
amountCents: number;
|
|
3250
|
-
currency: string;
|
|
3251
|
-
currentPeriodStart: string | null;
|
|
3252
|
-
currentPeriodEnd: string | null;
|
|
3253
|
-
cancelAtPeriodEnd: boolean;
|
|
3254
|
-
activatedAt: string | null;
|
|
3255
|
-
canceledAt: string | null;
|
|
3256
|
-
createdAt: string;
|
|
3257
|
-
};
|
|
3258
|
-
PaywallGrantCount: {
|
|
3259
|
-
/** @enum {string} */
|
|
3260
|
-
object: "paywall_grant_count";
|
|
3261
|
-
cancelableRecurring: number;
|
|
3262
|
-
windingDownRecurring: number;
|
|
3263
3233
|
};
|
|
3264
3234
|
PaywallOffer: {
|
|
3265
3235
|
/** @enum {string} */
|
|
@@ -3279,37 +3249,6 @@ interface components {
|
|
|
3279
3249
|
intervalCount: number | null;
|
|
3280
3250
|
isDefault: boolean;
|
|
3281
3251
|
};
|
|
3282
|
-
PaywallOfferAdmin: {
|
|
3283
|
-
id: string;
|
|
3284
|
-
/** @enum {string} */
|
|
3285
|
-
object: "paywall_offer";
|
|
3286
|
-
offerKey: string;
|
|
3287
|
-
label: string | null;
|
|
3288
|
-
billingLabel: string | null;
|
|
3289
|
-
/** @enum {string} */
|
|
3290
|
-
kind: "recurring" | "one_time";
|
|
3291
|
-
intervalUnit: string | null;
|
|
3292
|
-
intervalCount: number | null;
|
|
3293
|
-
amountCents: number;
|
|
3294
|
-
currency: string;
|
|
3295
|
-
stripePriceId: string | null;
|
|
3296
|
-
enabled: boolean;
|
|
3297
|
-
isDefault: boolean;
|
|
3298
|
-
displayOrder: number;
|
|
3299
|
-
createdAt: string;
|
|
3300
|
-
};
|
|
3301
|
-
PaywallOfferAdminOrNull: components["schemas"]["PaywallOfferAdmin"] | unknown | unknown;
|
|
3302
|
-
Permission: {
|
|
3303
|
-
/** @description Unique identifier for the permission. */
|
|
3304
|
-
id: string;
|
|
3305
|
-
/**
|
|
3306
|
-
* @description String representing the object's type.
|
|
3307
|
-
* @enum {string}
|
|
3308
|
-
*/
|
|
3309
|
-
object: "permission";
|
|
3310
|
-
/** @description The permission string, e.g. `members.manage`. */
|
|
3311
|
-
permission: string;
|
|
3312
|
-
};
|
|
3313
3252
|
Plan: {
|
|
3314
3253
|
/** @enum {string} */
|
|
3315
3254
|
object: "plan";
|
|
@@ -3348,14 +3287,17 @@ interface components {
|
|
|
3348
3287
|
};
|
|
3349
3288
|
};
|
|
3350
3289
|
PlanFeature: {
|
|
3351
|
-
/**
|
|
3352
|
-
|
|
3290
|
+
/**
|
|
3291
|
+
* @description Stable Cavuno plan capability key.
|
|
3292
|
+
* @enum {string}
|
|
3293
|
+
*/
|
|
3294
|
+
key: "jobs.max_active" | "jobs.duration_days" | "jobs.featured_slots" | "jobs.feature_selection_mode" | "talent.profile_unlocks" | "talent.messages_sent";
|
|
3353
3295
|
name: string | null;
|
|
3354
3296
|
value: string | null;
|
|
3355
|
-
dataType: string | null;
|
|
3356
3297
|
};
|
|
3357
3298
|
PlanFeatureValue: {
|
|
3358
|
-
|
|
3299
|
+
/** @enum {string} */
|
|
3300
|
+
key: "jobs.max_active" | "jobs.duration_days" | "jobs.featured_slots" | "jobs.feature_selection_mode" | "talent.profile_unlocks" | "talent.messages_sent";
|
|
3359
3301
|
value: string;
|
|
3360
3302
|
};
|
|
3361
3303
|
/** @description The plan single active price, or null when no price has been set. */
|
|
@@ -3364,9 +3306,6 @@ interface components {
|
|
|
3364
3306
|
currency: string;
|
|
3365
3307
|
/** @description Unit amount in the smallest currency unit. */
|
|
3366
3308
|
amountCents: number;
|
|
3367
|
-
stripePriceId: string | null;
|
|
3368
|
-
stripeProductId: string | null;
|
|
3369
|
-
isActive: boolean;
|
|
3370
3309
|
} | null;
|
|
3371
3310
|
PromotionCode: {
|
|
3372
3311
|
id: string;
|
|
@@ -3916,6 +3855,34 @@ interface components {
|
|
|
3916
3855
|
*/
|
|
3917
3856
|
expiresAt?: string | null;
|
|
3918
3857
|
};
|
|
3858
|
+
PutCandidatePaywallBody: {
|
|
3859
|
+
/** @enum {string} */
|
|
3860
|
+
object?: "candidate_paywall";
|
|
3861
|
+
enabled: boolean;
|
|
3862
|
+
previewCount: number;
|
|
3863
|
+
lockHeading: string;
|
|
3864
|
+
lockDescription: string;
|
|
3865
|
+
buttonText: string;
|
|
3866
|
+
disclaimerText: string;
|
|
3867
|
+
currency: string;
|
|
3868
|
+
perMonthLabel: string;
|
|
3869
|
+
savingsTemplate: string;
|
|
3870
|
+
offers: {
|
|
3871
|
+
/** @enum {string} */
|
|
3872
|
+
key: "daily" | "weekly" | "monthly" | "quarterly" | "yearly" | "lifetime";
|
|
3873
|
+
enabled: boolean;
|
|
3874
|
+
amountCents: number;
|
|
3875
|
+
isDefault: boolean;
|
|
3876
|
+
label?: string;
|
|
3877
|
+
billingLabel?: string;
|
|
3878
|
+
/** @enum {string} */
|
|
3879
|
+
kind?: "recurring" | "lifetime";
|
|
3880
|
+
displayOrder?: number;
|
|
3881
|
+
/** @enum {string|null} */
|
|
3882
|
+
intervalUnit?: "day" | "week" | "month" | "year" | null;
|
|
3883
|
+
intervalCount?: number | null;
|
|
3884
|
+
}[];
|
|
3885
|
+
};
|
|
3919
3886
|
ReadReceipt: {
|
|
3920
3887
|
/** @enum {string} */
|
|
3921
3888
|
object: "read_receipt";
|
|
@@ -3988,9 +3955,6 @@ interface components {
|
|
|
3988
3955
|
/** @description Human-readable display label. */
|
|
3989
3956
|
label: string;
|
|
3990
3957
|
};
|
|
3991
|
-
RemoveForagerCompanyBody: {
|
|
3992
|
-
companyUrl: string;
|
|
3993
|
-
};
|
|
3994
3958
|
RenameCouponBody: {
|
|
3995
3959
|
name: string;
|
|
3996
3960
|
};
|
|
@@ -4000,6 +3964,14 @@ interface components {
|
|
|
4000
3964
|
/** @description Every stage id of the job, in the new order. */
|
|
4001
3965
|
orderedStageIds: string[];
|
|
4002
3966
|
};
|
|
3967
|
+
ReorderSalesLedPlansBody: {
|
|
3968
|
+
/** @description Complete active set: every non-archived plan id exactly once, with unique displayOrder values. */
|
|
3969
|
+
orders: {
|
|
3970
|
+
/** @description Cavuno sales-led plan ID from list/create. */
|
|
3971
|
+
id: string;
|
|
3972
|
+
displayOrder: number;
|
|
3973
|
+
}[];
|
|
3974
|
+
};
|
|
4003
3975
|
ReplyBody: {
|
|
4004
3976
|
body: string;
|
|
4005
3977
|
};
|
|
@@ -4008,32 +3980,7 @@ interface components {
|
|
|
4008
3980
|
reason: "spam" | "harassment" | "misrepresentation" | "other";
|
|
4009
3981
|
freeText?: string;
|
|
4010
3982
|
};
|
|
4011
|
-
ReportSnapshot: {
|
|
4012
|
-
/** @description Unique identifier for the snapshot. */
|
|
4013
|
-
id: string;
|
|
4014
|
-
/**
|
|
4015
|
-
* @description String representing the object's type.
|
|
4016
|
-
* @enum {string}
|
|
4017
|
-
*/
|
|
4018
|
-
object: "report_snapshot";
|
|
4019
|
-
/** @description The provider that produced the snapshot. */
|
|
4020
|
-
provider: string;
|
|
4021
|
-
/** @description The metric name. */
|
|
4022
|
-
metric: string;
|
|
4023
|
-
/** @description The segment (e.g. `global`, `country`). */
|
|
4024
|
-
segment: string;
|
|
4025
|
-
/** @description The aggregation interval (e.g. `1d`). */
|
|
4026
|
-
interval: string;
|
|
4027
|
-
/** @description ISO date string: inclusive start of the snapshot range. */
|
|
4028
|
-
rangeStart: string;
|
|
4029
|
-
/** @description ISO date string: inclusive end of the snapshot range. */
|
|
4030
|
-
rangeEnd: string;
|
|
4031
|
-
/** @description Provider-specific metric payload as collected. */
|
|
4032
|
-
payload?: unknown;
|
|
4033
|
-
};
|
|
4034
3983
|
ReportingConnect: {
|
|
4035
|
-
/** @description Provider-synthetic identifier for the connect. */
|
|
4036
|
-
id: string;
|
|
4037
3984
|
/**
|
|
4038
3985
|
* @description String representing the object's type.
|
|
4039
3986
|
* @enum {string}
|
|
@@ -4045,14 +3992,10 @@ interface components {
|
|
|
4045
3992
|
connected: boolean;
|
|
4046
3993
|
/** @description OAuth providers only. The URL the user must visit to grant access. */
|
|
4047
3994
|
authorizationUrl?: string;
|
|
4048
|
-
/** @description Search Console only: the site-verification DNS token. */
|
|
4049
|
-
verificationToken?: string;
|
|
4050
3995
|
/** @description The board site URL the integration reports on. */
|
|
4051
3996
|
siteUrl?: string;
|
|
4052
3997
|
/** @description Stripe only: the Monetization settings deep link. */
|
|
4053
3998
|
redirectUrl?: string;
|
|
4054
|
-
/** @description Stripe only: why no OAuth URL is returned. */
|
|
4055
|
-
reason?: string;
|
|
4056
3999
|
};
|
|
4057
4000
|
ReportingIntegration: {
|
|
4058
4001
|
/** @description Unique identifier for the integration. */
|
|
@@ -4069,33 +4012,11 @@ interface components {
|
|
|
4069
4012
|
provider: "search_console" | "adsense" | "tinybird" | "stripe" | "google_analytics";
|
|
4070
4013
|
/** @description Whether collection is enabled for this integration. */
|
|
4071
4014
|
enabled: boolean;
|
|
4015
|
+
/** @description Whether the connection has completed successfully. */
|
|
4016
|
+
connected: boolean;
|
|
4072
4017
|
/** @description ISO-8601 timestamp of when the integration was connected. */
|
|
4073
4018
|
connectedAt: string | null;
|
|
4074
|
-
|
|
4075
|
-
externalId: string | null;
|
|
4076
|
-
/** @description OAuth scopes granted to the integration. */
|
|
4077
|
-
scopes: string[];
|
|
4078
|
-
settings: components["schemas"]["ReportingIntegrationSettings"];
|
|
4079
|
-
/** @description ISO-8601 timestamp of the last successful collection. */
|
|
4080
|
-
lastCollectedAt: string | null;
|
|
4081
|
-
};
|
|
4082
|
-
/** @description Provider-specific settings. The OAuth `refreshToken` and `oauthState` are always redacted. */
|
|
4083
|
-
ReportingIntegrationSettings: {
|
|
4084
|
-
type?: string;
|
|
4085
|
-
siteUrl?: string;
|
|
4086
|
-
domain?: string | null;
|
|
4087
|
-
siteHostname?: string;
|
|
4088
|
-
verificationToken?: string;
|
|
4089
|
-
status?: string;
|
|
4090
|
-
slug?: string;
|
|
4091
|
-
inspectionUrl?: string;
|
|
4092
|
-
lastSyncedAt?: string;
|
|
4093
|
-
permissionLevel?: string;
|
|
4094
|
-
platformSiteUrl?: string;
|
|
4095
|
-
propertyUrl?: string;
|
|
4096
|
-
adsenseAccountId?: string;
|
|
4097
|
-
sitemapSubmitted?: boolean;
|
|
4098
|
-
} | null;
|
|
4019
|
+
};
|
|
4099
4020
|
ResourceLinks: {
|
|
4100
4021
|
/**
|
|
4101
4022
|
* Format: uri
|
|
@@ -4141,19 +4062,6 @@ interface components {
|
|
|
4141
4062
|
/** @description OAuth client secret. May be supplied here or via HTTP Basic authentication. */
|
|
4142
4063
|
client_secret?: string;
|
|
4143
4064
|
};
|
|
4144
|
-
Role: {
|
|
4145
|
-
/** @description Unique identifier for the role. */
|
|
4146
|
-
id: string;
|
|
4147
|
-
/**
|
|
4148
|
-
* @description String representing the object's type.
|
|
4149
|
-
* @enum {string}
|
|
4150
|
-
*/
|
|
4151
|
-
object: "role";
|
|
4152
|
-
/** @description The role name: owner, admin, or member. */
|
|
4153
|
-
role: string;
|
|
4154
|
-
/** @description The permission strings granted to the role by default. */
|
|
4155
|
-
permissions: string[];
|
|
4156
|
-
};
|
|
4157
4065
|
SalaryCompanyIndexItem: {
|
|
4158
4066
|
/** @enum {string} */
|
|
4159
4067
|
object: "salary_company";
|
|
@@ -4214,14 +4122,6 @@ interface components {
|
|
|
4214
4122
|
featuredBullets: string[];
|
|
4215
4123
|
displayOrder: number;
|
|
4216
4124
|
};
|
|
4217
|
-
SampleJobsBody: {
|
|
4218
|
-
/** @description The board name. */
|
|
4219
|
-
boardName: string;
|
|
4220
|
-
/** @description Optional board description to tailor the sample jobs. */
|
|
4221
|
-
boardDescription?: string;
|
|
4222
|
-
/** @description How many sample jobs to generate (default 10, max 25). */
|
|
4223
|
-
count?: number;
|
|
4224
|
-
};
|
|
4225
4125
|
SaveJobBody: {
|
|
4226
4126
|
jobId: string;
|
|
4227
4127
|
};
|
|
@@ -4304,9 +4204,10 @@ interface components {
|
|
|
4304
4204
|
workEmail: string;
|
|
4305
4205
|
};
|
|
4306
4206
|
SetPlanFeaturesBody: {
|
|
4307
|
-
/** @description Full replacement set of
|
|
4207
|
+
/** @description Full replacement set of typed Cavuno capability key/value pairs for the plan. */
|
|
4308
4208
|
features: {
|
|
4309
|
-
|
|
4209
|
+
/** @enum {string} */
|
|
4210
|
+
key: "jobs.max_active" | "jobs.duration_days" | "jobs.featured_slots" | "jobs.feature_selection_mode" | "talent.profile_unlocks" | "talent.messages_sent";
|
|
4310
4211
|
value: string;
|
|
4311
4212
|
}[];
|
|
4312
4213
|
};
|
|
@@ -4316,6 +4217,20 @@ interface components {
|
|
|
4316
4217
|
/** @description Unit amount in the smallest currency unit. */
|
|
4317
4218
|
amountCents: number;
|
|
4318
4219
|
};
|
|
4220
|
+
Settings: {
|
|
4221
|
+
id: string;
|
|
4222
|
+
/** @enum {string} */
|
|
4223
|
+
object: "settings";
|
|
4224
|
+
accountId: string;
|
|
4225
|
+
name: string;
|
|
4226
|
+
slug: string;
|
|
4227
|
+
primaryDomainId: string | null;
|
|
4228
|
+
logoUrl: string | null;
|
|
4229
|
+
heroUrl: string | null;
|
|
4230
|
+
config: components["schemas"]["OperatorSettingsConfig"];
|
|
4231
|
+
createdAt: string;
|
|
4232
|
+
updatedAt: string;
|
|
4233
|
+
};
|
|
4319
4234
|
SettingsAdsenseBody: {
|
|
4320
4235
|
/** @description Whether AdSense placements are rendered on the public board. */
|
|
4321
4236
|
adsenseEnabled?: boolean;
|
|
@@ -4346,30 +4261,6 @@ interface components {
|
|
|
4346
4261
|
/** @description Plaintext password used to gate the public board. Must be at least 8 characters. Stored hashed and encrypted server-side. */
|
|
4347
4262
|
password: string;
|
|
4348
4263
|
};
|
|
4349
|
-
SettingsPaywallBody: {
|
|
4350
|
-
/** @description Whether the job-access paywall is enforced on the public board. */
|
|
4351
|
-
jobAccessPaywallEnabled: boolean;
|
|
4352
|
-
/** @description Number of jobs visible before the paywall locks the rest. Range 1–500. */
|
|
4353
|
-
jobAccessPreviewCount?: number;
|
|
4354
|
-
/** @description Heading shown on the paywall. Up to 120 characters. */
|
|
4355
|
-
jobAccessLockHeading?: string;
|
|
4356
|
-
/** @description Body copy shown on the paywall. Up to 600 characters. */
|
|
4357
|
-
jobAccessLockDescription?: string;
|
|
4358
|
-
/** @description Call-to-action label shown on the paywall. Up to 60 characters. */
|
|
4359
|
-
jobAccessButtonText?: string;
|
|
4360
|
-
/** @description Fine-print disclaimer shown beneath the call-to-action. Up to 200 characters. */
|
|
4361
|
-
jobAccessDisclaimerText?: string;
|
|
4362
|
-
/** @description Label appended to the monthly price (e.g. `/month`). Up to 60 characters. */
|
|
4363
|
-
jobAccessPerMonthLabel?: string;
|
|
4364
|
-
/** @description Template string used to render the savings line for annual plans. Up to 120 characters. */
|
|
4365
|
-
jobAccessSavingsTemplate?: string;
|
|
4366
|
-
/** @description Three-letter ISO 4217 currency code for paywall pricing. */
|
|
4367
|
-
jobAccessCurrency?: string;
|
|
4368
|
-
/** @description Stripe product ID associated with the paywall plan. Pass `null` to clear. */
|
|
4369
|
-
jobAccessStripeProductId?: string | unknown | unknown;
|
|
4370
|
-
/** @description Stripe billing-portal configuration ID used for self-serve plan management. Pass `null` to clear. */
|
|
4371
|
-
jobAccessStripePortalConfigId?: string | unknown | unknown;
|
|
4372
|
-
};
|
|
4373
4264
|
Skill: {
|
|
4374
4265
|
id: string;
|
|
4375
4266
|
/** @enum {string} */
|
|
@@ -4901,7 +4792,7 @@ interface components {
|
|
|
4901
4792
|
status: "paid" | "open" | "void" | "uncollectible";
|
|
4902
4793
|
/** @enum {string} */
|
|
4903
4794
|
method: "card" | "invoice";
|
|
4904
|
-
/** @description Amount in
|
|
4795
|
+
/** @description Amount in currency minor units (cents for most currencies). */
|
|
4905
4796
|
amountCents: number;
|
|
4906
4797
|
currency: string;
|
|
4907
4798
|
description: string;
|
|
@@ -4911,7 +4802,6 @@ interface components {
|
|
|
4911
4802
|
date: string;
|
|
4912
4803
|
/** @description ISO-8601 invoice due date, or null. Past-due is client-derived from this field. */
|
|
4913
4804
|
invoiceDueAt: string | null;
|
|
4914
|
-
stripeInvoiceId: string | null;
|
|
4915
4805
|
hostedInvoiceUrl: string | null;
|
|
4916
4806
|
receiptUrl: string | null;
|
|
4917
4807
|
methodBrand: string | null;
|
|
@@ -4919,10 +4809,6 @@ interface components {
|
|
|
4919
4809
|
methodType: string | null;
|
|
4920
4810
|
/** @enum {string|null} */
|
|
4921
4811
|
publishTiming: "on_issue" | "on_payment" | null;
|
|
4922
|
-
/** @description jobOrders id when this row is order-sourced. */
|
|
4923
|
-
orderId: string | null;
|
|
4924
|
-
/** @description employerSubscriptions id when this row is a subscription renewal. Cross-link: GET /v1/employer-subscriptions/:id. */
|
|
4925
|
-
subscriptionId: string | null;
|
|
4926
4812
|
};
|
|
4927
4813
|
TransferOwnershipBody: {
|
|
4928
4814
|
/** @description The user ID of the member who will become the primary owner. */
|
|
@@ -4966,8 +4852,8 @@ interface components {
|
|
|
4966
4852
|
* @enum {string}
|
|
4967
4853
|
*/
|
|
4968
4854
|
status?: "active" | "inactive";
|
|
4969
|
-
/** @description
|
|
4970
|
-
|
|
4855
|
+
/** @description Cavuno media ID of an uploaded avatar image. Pass `null` to clear it. */
|
|
4856
|
+
avatarMediaId?: string | null;
|
|
4971
4857
|
/** @description The author's personal website URL. Normalized to a canonical URL when stored. */
|
|
4972
4858
|
websiteUrl?: string;
|
|
4973
4859
|
/** @description The author's X (Twitter) profile URL. Stored as the canonical `https://x.com/<handle>` URL. */
|
|
@@ -4983,6 +4869,27 @@ interface components {
|
|
|
4983
4869
|
/** @description The author's display name. */
|
|
4984
4870
|
name?: string;
|
|
4985
4871
|
};
|
|
4872
|
+
UpdateBackfillRuleBody: {
|
|
4873
|
+
name?: string;
|
|
4874
|
+
rules?: {
|
|
4875
|
+
/** @enum {string} */
|
|
4876
|
+
match: "any" | "all";
|
|
4877
|
+
conditions: {
|
|
4878
|
+
/** @enum {string} */
|
|
4879
|
+
field: "title" | "description";
|
|
4880
|
+
/** @enum {string} */
|
|
4881
|
+
operator: "contains_any" | "contains_all" | "is_not";
|
|
4882
|
+
terms: string[];
|
|
4883
|
+
}[];
|
|
4884
|
+
}[];
|
|
4885
|
+
filters?: {
|
|
4886
|
+
countries?: string[];
|
|
4887
|
+
subdivisions?: string[];
|
|
4888
|
+
seniorities?: ("entry_level" | "associate" | "mid_level" | "senior" | "director" | "executive")[];
|
|
4889
|
+
employmentTypes?: ("full_time" | "part_time" | "contract" | "internship" | "temporary" | "volunteer" | "other")[];
|
|
4890
|
+
workplaceTypes?: ("remote" | "hybrid" | "onsite")[];
|
|
4891
|
+
};
|
|
4892
|
+
};
|
|
4986
4893
|
UpdateBlogPostBody: {
|
|
4987
4894
|
slug?: string;
|
|
4988
4895
|
html?: string;
|
|
@@ -4991,8 +4898,8 @@ interface components {
|
|
|
4991
4898
|
featured?: boolean;
|
|
4992
4899
|
authorIds?: string[];
|
|
4993
4900
|
tagIds?: string[];
|
|
4994
|
-
|
|
4995
|
-
|
|
4901
|
+
coverMediaId?: string | null;
|
|
4902
|
+
ogImageMediaId?: string | null;
|
|
4996
4903
|
featureImageAlt?: string;
|
|
4997
4904
|
featureImageCaption?: string;
|
|
4998
4905
|
seoTitle?: string;
|
|
@@ -5079,16 +4986,6 @@ interface components {
|
|
|
5079
4986
|
description?: string;
|
|
5080
4987
|
sortOrder?: number;
|
|
5081
4988
|
};
|
|
5082
|
-
UpdateForagerDescriptionBody: {
|
|
5083
|
-
description: string | null;
|
|
5084
|
-
};
|
|
5085
|
-
UpdateForagerSubscriptionBody: {
|
|
5086
|
-
name?: string;
|
|
5087
|
-
rules?: components["schemas"]["ForagerRule"][];
|
|
5088
|
-
filters?: components["schemas"]["ForagerFilters"];
|
|
5089
|
-
active?: boolean;
|
|
5090
|
-
description?: string | null;
|
|
5091
|
-
};
|
|
5092
4989
|
UpdateInvitationBody: {
|
|
5093
4990
|
/**
|
|
5094
4991
|
* @description The new role for the pending invitation.
|
|
@@ -5206,16 +5103,6 @@ interface components {
|
|
|
5206
5103
|
channel: "messageEmails" | "applicationEmails";
|
|
5207
5104
|
subscribed: boolean;
|
|
5208
5105
|
};
|
|
5209
|
-
UpdatePaywallOfferBody: {
|
|
5210
|
-
/** @description Enable or disable the offer. */
|
|
5211
|
-
isEnabled?: boolean;
|
|
5212
|
-
/** @description Alias of isEnabled (either is accepted). */
|
|
5213
|
-
enabled?: boolean;
|
|
5214
|
-
label?: string;
|
|
5215
|
-
billingLabel?: string;
|
|
5216
|
-
displayOrder?: number;
|
|
5217
|
-
isDefault?: boolean;
|
|
5218
|
-
};
|
|
5219
5106
|
UpdatePipelineStageBody: {
|
|
5220
5107
|
label?: string;
|
|
5221
5108
|
hidden?: boolean;
|
|
@@ -5238,6 +5125,20 @@ interface components {
|
|
|
5238
5125
|
/** @description HTTP status code. One of `301` or `302`. */
|
|
5239
5126
|
statusCode?: 301 | 302;
|
|
5240
5127
|
};
|
|
5128
|
+
UpdateSalesLedPlanBody: {
|
|
5129
|
+
name: string;
|
|
5130
|
+
description: string;
|
|
5131
|
+
priceText: string;
|
|
5132
|
+
ctaText: string;
|
|
5133
|
+
/** @description Email address or URL. Bare emails become mailto:; bare domains become https://. */
|
|
5134
|
+
ctaDestination: string;
|
|
5135
|
+
/** @description Up to five feature bullets shown on the pricing card. */
|
|
5136
|
+
featuredBullets: string[];
|
|
5137
|
+
/** @description Whether the plan is shown on the public employer pricing page. */
|
|
5138
|
+
isPublic: boolean;
|
|
5139
|
+
/** @description Sort order among active sales-led plans (lower first). */
|
|
5140
|
+
displayOrder: number;
|
|
5141
|
+
};
|
|
5241
5142
|
UpdateSkillBody: {
|
|
5242
5143
|
name?: string;
|
|
5243
5144
|
slug?: string;
|
|
@@ -5264,21 +5165,26 @@ interface components {
|
|
|
5264
5165
|
name?: string;
|
|
5265
5166
|
};
|
|
5266
5167
|
Usage: {
|
|
5267
|
-
/** @description Unique identifier for the object. Equal to the account ID: usage is a per-account singleton. */
|
|
5268
|
-
id: string;
|
|
5269
5168
|
/**
|
|
5270
5169
|
* @description String representing the object's type. Objects of the same type share the same value.
|
|
5271
5170
|
* @enum {string}
|
|
5272
5171
|
*/
|
|
5273
5172
|
object: "usage";
|
|
5274
|
-
/** @description
|
|
5275
|
-
|
|
5276
|
-
|
|
5277
|
-
|
|
5278
|
-
/**
|
|
5279
|
-
|
|
5280
|
-
|
|
5281
|
-
|
|
5173
|
+
/** @description Typed product capacities for active jobs, confirmed subscribers, and team seats. */
|
|
5174
|
+
capacities: components["schemas"]["UsageCapacity"][];
|
|
5175
|
+
};
|
|
5176
|
+
UsageCapacity: {
|
|
5177
|
+
/**
|
|
5178
|
+
* @description Stable capacity key matching the dashboard: active_jobs, confirmed_subscribers, or team_seats.
|
|
5179
|
+
* @enum {string}
|
|
5180
|
+
*/
|
|
5181
|
+
key: "active_jobs" | "confirmed_subscribers" | "team_seats";
|
|
5182
|
+
/** @description Current usage for this capacity. Never negative. */
|
|
5183
|
+
used: number;
|
|
5184
|
+
/** @description Effective plan or override cap. Null when the capacity is unlimited. */
|
|
5185
|
+
limit: number | null;
|
|
5186
|
+
/** @description Slots remaining before the limit. Null when unlimited; never negative when finite. */
|
|
5187
|
+
remaining: number | null;
|
|
5282
5188
|
};
|
|
5283
5189
|
VerifyEmailOtpBody: {
|
|
5284
5190
|
code: string;
|