@cavuno/board 4.9.0 → 4.10.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/CHANGELOG.md +24 -0
- package/dist/{_spec-B9Ah8dNs.d.mts → _spec-BwUP7Wni.d.mts} +65 -1
- package/dist/{_spec-B9Ah8dNs.d.ts → _spec-BwUP7Wni.d.ts} +65 -1
- package/dist/{blog-BmqWfLZi.d.mts → blog-C_xXYOxc.d.mts} +1 -1
- package/dist/{blog-bh07fZ8Q.d.ts → blog-DC4BfQqF.d.ts} +1 -1
- package/dist/{board-B4jLqmxn.d.mts → board-CG8rDGTY.d.mts} +2 -2
- package/dist/{board-De8nLbk7.d.ts → board-zdQ875ck.d.ts} +2 -2
- package/dist/{breadcrumbs-BVQL2dNY.d.mts → breadcrumbs-BK7AqNp2.d.mts} +2 -2
- package/dist/{breadcrumbs-B1HVufC7.d.ts → breadcrumbs-qs9DC0yh.d.ts} +2 -2
- package/dist/browser/cavuno-board.global.min.js +1 -1
- package/dist/{chunk-T46JASKG.mjs → chunk-XEJWXRLK.mjs} +7 -0
- package/dist/filters.d.mts +2 -2
- package/dist/filters.d.ts +2 -2
- package/dist/format.d.mts +4 -4
- package/dist/format.d.ts +4 -4
- package/dist/index.d.mts +86 -14
- package/dist/index.d.ts +86 -14
- package/dist/index.js +118 -4
- package/dist/index.mjs +112 -5
- package/dist/{jobs-Iv6Wkvvf.d.ts → jobs-B-uO7ffG.d.ts} +1 -1
- package/dist/{jobs-B7q3BgIK.d.mts → jobs-BToqhRuU.d.mts} +1 -1
- package/dist/{search-DC0jatQN.d.mts → search-CvwKD0Va.d.mts} +1 -1
- package/dist/{search-CbDZwdyl.d.ts → search-Sl9-xi1z.d.ts} +1 -1
- package/dist/{seo-HCE7aCkh.d.mts → seo-B9b2AkSE.d.mts} +1 -1
- package/dist/{seo-BDFUuvXM.d.ts → seo-D1Vc_0HF.d.ts} +1 -1
- package/dist/seo-files.d.mts +2 -2
- package/dist/seo-files.d.ts +2 -2
- package/dist/seo.d.mts +6 -6
- package/dist/seo.d.ts +6 -6
- package/dist/server.d.mts +6 -6
- package/dist/server.d.ts +6 -6
- package/dist/server.mjs +1 -1
- package/dist/sitemap.d.mts +6 -6
- package/dist/sitemap.d.ts +6 -6
- package/dist/suggest.d.mts +2 -2
- package/dist/suggest.d.ts +2 -2
- package/package.json +1 -1
- package/skills/cavuno-board-setup/SKILL.md +1 -0
- package/skills/cavuno-board-talent-access/SKILL.md +149 -0
- package/skills/manifest.json +8 -1
|
@@ -132,6 +132,13 @@ var BOARD_API_ERROR_CODES = [
|
|
|
132
132
|
"paywall_no_candidate_profile",
|
|
133
133
|
"paywall_no_recurring_subscription",
|
|
134
134
|
"paywall_offer_not_found",
|
|
135
|
+
// Employer talent-access paywall
|
|
136
|
+
"talent_access_unavailable",
|
|
137
|
+
"company_required",
|
|
138
|
+
"already_on_plan",
|
|
139
|
+
"talent_access_required",
|
|
140
|
+
"messaging_talent_access_required",
|
|
141
|
+
"stripe_not_connected",
|
|
135
142
|
// Public job posting
|
|
136
143
|
"job_posting_logo_lookup_unavailable",
|
|
137
144
|
"job_posting_logo_not_found",
|
package/dist/filters.d.mts
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { J as JobSort, E as EmploymentType, R as RemoteOption, S as Seniority } from './jobs-
|
|
2
|
-
import './_spec-
|
|
1
|
+
import { J as JobSort, E as EmploymentType, R as RemoteOption, S as Seniority } from './jobs-BToqhRuU.mjs';
|
|
2
|
+
import './_spec-BwUP7Wni.mjs';
|
|
3
3
|
|
|
4
4
|
/**
|
|
5
5
|
* `@cavuno/board/filters` — the canonical listing-filter vocabulary and URL
|
package/dist/filters.d.ts
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { J as JobSort, E as EmploymentType, R as RemoteOption, S as Seniority } from './jobs-
|
|
2
|
-
import './_spec-
|
|
1
|
+
import { J as JobSort, E as EmploymentType, R as RemoteOption, S as Seniority } from './jobs-B-uO7ffG.js';
|
|
2
|
+
import './_spec-BwUP7Wni.js';
|
|
3
3
|
|
|
4
4
|
/**
|
|
5
5
|
* `@cavuno/board/filters` — the canonical listing-filter vocabulary and URL
|
package/dist/format.d.mts
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
|
-
export { C as CurrencyDisplay, F as FormattedSalaryRange, J as JobBreadcrumb, N as NumberNotation, S as SalaryTimeframeInput, a as SalaryTimeframeValue, b as buildJobBreadcrumbs, f as formatSalaryRange, c as formatSalaryStat, d as formatSalaryStatRange, n as normalizeWebsiteUrl } from './breadcrumbs-
|
|
2
|
-
import { C as CustomFieldDefinition } from './board-
|
|
3
|
-
import { C as CustomFieldValues } from './jobs-
|
|
4
|
-
import './_spec-
|
|
1
|
+
export { C as CurrencyDisplay, F as FormattedSalaryRange, J as JobBreadcrumb, N as NumberNotation, S as SalaryTimeframeInput, a as SalaryTimeframeValue, b as buildJobBreadcrumbs, f as formatSalaryRange, c as formatSalaryStat, d as formatSalaryStatRange, n as normalizeWebsiteUrl } from './breadcrumbs-BK7AqNp2.mjs';
|
|
2
|
+
import { C as CustomFieldDefinition } from './board-CG8rDGTY.mjs';
|
|
3
|
+
import { C as CustomFieldValues } from './jobs-BToqhRuU.mjs';
|
|
4
|
+
import './_spec-BwUP7Wni.mjs';
|
|
5
5
|
|
|
6
6
|
/**
|
|
7
7
|
* Date display helpers in the board language (required leading parameter,
|
package/dist/format.d.ts
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
|
-
export { C as CurrencyDisplay, F as FormattedSalaryRange, J as JobBreadcrumb, N as NumberNotation, S as SalaryTimeframeInput, a as SalaryTimeframeValue, b as buildJobBreadcrumbs, f as formatSalaryRange, c as formatSalaryStat, d as formatSalaryStatRange, n as normalizeWebsiteUrl } from './breadcrumbs-
|
|
2
|
-
import { C as CustomFieldDefinition } from './board-
|
|
3
|
-
import { C as CustomFieldValues } from './jobs-
|
|
4
|
-
import './_spec-
|
|
1
|
+
export { C as CurrencyDisplay, F as FormattedSalaryRange, J as JobBreadcrumb, N as NumberNotation, S as SalaryTimeframeInput, a as SalaryTimeframeValue, b as buildJobBreadcrumbs, f as formatSalaryRange, c as formatSalaryStat, d as formatSalaryStatRange, n as normalizeWebsiteUrl } from './breadcrumbs-qs9DC0yh.js';
|
|
2
|
+
import { C as CustomFieldDefinition } from './board-zdQ875ck.js';
|
|
3
|
+
import { C as CustomFieldValues } from './jobs-B-uO7ffG.js';
|
|
4
|
+
import './_spec-BwUP7Wni.js';
|
|
5
5
|
|
|
6
6
|
/**
|
|
7
7
|
* Date display helpers in the board language (required leading parameter,
|
package/dist/index.d.mts
CHANGED
|
@@ -1,13 +1,13 @@
|
|
|
1
|
-
import { S as Schemas, c as components } from './_spec-
|
|
2
|
-
import { F as FetchOptions, S as StorageMode, B as BoardRequest, A as Awaitable, L as Logger, a as BoardClient, b as SearchSuggestQuery } from './search-
|
|
3
|
-
export { c as ACCESS_TOKEN_KEY, d as BOARD_ACCESS_GRANT_KEY, C as CompanySuggestion, e as CustomStorage, M as MarketSuggestion, R as REFRESH_TOKEN_KEY, f as SearchSuggestType, g as SuggestResult, h as SuggestionItem, T as TermSuggestion } from './search-
|
|
4
|
-
import { c as CompaniesListQuery, d as CompanyListEnvelope, e as CompaniesSearchBody, f as CompanyJobsListQuery, g as CompanySimilarQuery, h as CompanyMarketsListQuery, i as SalaryDetailQuery } from './board-
|
|
5
|
-
export { a as CompanyCategorySalary, j as CompanyMarket, k as CompanyMarketRef, b as CompanySalary, l as CompanySalarySummary, C as CustomFieldDefinition, m as CustomFieldOption, n as CustomFieldType, L as LocationSalaryDetail, o as LocationSkillsIndex, p as LocationTitlesIndex, P as PublicBoard, q as PublicBoardAds, r as PublicBoardAnalytics, s as PublicBoardFeatures, t as PublicBoardJobForm, u as PublicCompany, v as PublicCompanyDetail, w as SalaryCompany, x as SalaryLocation, y as SalarySkill, z as SalaryTitle, A as SkillLocationSalary, B as SkillLocationsIndex, S as SkillSalaryDetail, D as TitleLocationSalary, E as TitleLocationsIndex, T as TitleSalaryDetail } from './board-
|
|
6
|
-
export { B as BoardSeo } from './seo-
|
|
7
|
-
import { R as RemoteOption, E as EmploymentType, S as Seniority, L as ListEnvelope, a as JobsListQuery, b as JobCardListEnvelope, c as JobsSearchBody, d as JobCardSearchEnvelope, e as JobsSimilarQuery, f as SearchEnvelope } from './jobs-
|
|
8
|
-
export { g as CustomFieldValue, C as CustomFieldValues, h as EducationRequirement, i as JobCatalogPagination, j as JobCompany, J as JobSort, O as OfficeLocation, k as OffsetPagination, P as PublicJob, l as PublicJobCard, m as RelatedSearch, n as RemotePermit, o as RemoteTimezone, p as StorefrontPagination } from './jobs-
|
|
9
|
-
import { a as BlogPostsListQuery, b as BlogSimilarQuery, c as BlogSearchBody } from './blog-
|
|
10
|
-
export { B as BlogAuthorEmbed, d as BlogTagEmbed, e as PublicBlogAdjacentPosts, f as PublicBlogAuthor, g as PublicBlogPost, P as PublicBlogPostSummary, h as PublicBlogTag } from './blog-
|
|
1
|
+
import { S as Schemas, c as components } from './_spec-BwUP7Wni.mjs';
|
|
2
|
+
import { F as FetchOptions, S as StorageMode, B as BoardRequest, A as Awaitable, L as Logger, a as BoardClient, b as SearchSuggestQuery } from './search-CvwKD0Va.mjs';
|
|
3
|
+
export { c as ACCESS_TOKEN_KEY, d as BOARD_ACCESS_GRANT_KEY, C as CompanySuggestion, e as CustomStorage, M as MarketSuggestion, R as REFRESH_TOKEN_KEY, f as SearchSuggestType, g as SuggestResult, h as SuggestionItem, T as TermSuggestion } from './search-CvwKD0Va.mjs';
|
|
4
|
+
import { c as CompaniesListQuery, d as CompanyListEnvelope, e as CompaniesSearchBody, f as CompanyJobsListQuery, g as CompanySimilarQuery, h as CompanyMarketsListQuery, i as SalaryDetailQuery } from './board-CG8rDGTY.mjs';
|
|
5
|
+
export { a as CompanyCategorySalary, j as CompanyMarket, k as CompanyMarketRef, b as CompanySalary, l as CompanySalarySummary, C as CustomFieldDefinition, m as CustomFieldOption, n as CustomFieldType, L as LocationSalaryDetail, o as LocationSkillsIndex, p as LocationTitlesIndex, P as PublicBoard, q as PublicBoardAds, r as PublicBoardAnalytics, s as PublicBoardFeatures, t as PublicBoardJobForm, u as PublicCompany, v as PublicCompanyDetail, w as SalaryCompany, x as SalaryLocation, y as SalarySkill, z as SalaryTitle, A as SkillLocationSalary, B as SkillLocationsIndex, S as SkillSalaryDetail, D as TitleLocationSalary, E as TitleLocationsIndex, T as TitleSalaryDetail } from './board-CG8rDGTY.mjs';
|
|
6
|
+
export { B as BoardSeo } from './seo-B9b2AkSE.mjs';
|
|
7
|
+
import { R as RemoteOption, E as EmploymentType, S as Seniority, L as ListEnvelope, a as JobsListQuery, b as JobCardListEnvelope, c as JobsSearchBody, d as JobCardSearchEnvelope, e as JobsSimilarQuery, f as SearchEnvelope } from './jobs-BToqhRuU.mjs';
|
|
8
|
+
export { g as CustomFieldValue, C as CustomFieldValues, h as EducationRequirement, i as JobCatalogPagination, j as JobCompany, J as JobSort, O as OfficeLocation, k as OffsetPagination, P as PublicJob, l as PublicJobCard, m as RelatedSearch, n as RemotePermit, o as RemoteTimezone, p as StorefrontPagination } from './jobs-BToqhRuU.mjs';
|
|
9
|
+
import { a as BlogPostsListQuery, b as BlogSimilarQuery, c as BlogSearchBody } from './blog-C_xXYOxc.mjs';
|
|
10
|
+
export { B as BlogAuthorEmbed, d as BlogTagEmbed, e as PublicBlogAdjacentPosts, f as PublicBlogAuthor, g as PublicBlogPost, P as PublicBlogPostSummary, h as PublicBlogTag } from './blog-C_xXYOxc.mjs';
|
|
11
11
|
|
|
12
12
|
/**
|
|
13
13
|
* Well-known `<domain>_<snake_reason>` codes the Board API sends, grouped by
|
|
@@ -20,7 +20,7 @@ export { B as BlogAuthorEmbed, d as BlogTagEmbed, e as PublicBlogAdjacentPosts,
|
|
|
20
20
|
* `unknown_error` is SDK-synthesized when a response carries no parseable
|
|
21
21
|
* envelope.
|
|
22
22
|
*/
|
|
23
|
-
declare const BOARD_API_ERROR_CODES: readonly ["internal_error", "validation_bad_request", "validation_payload_too_large", "rate_limited", "rate_limit_unavailable", "search_unavailable", "too_many_filter_values", "pagination_invalid_cursor", "pagination_offset_too_large", "auth_unauthenticated", "auth_forbidden", "plan_upgrade_required", "unknown_error", "boards_not_found", "board_page_not_found", "board_auth_email_taken", "board_auth_invalid_credentials", "board_auth_invalid_token", "board_auth_registration_disabled", "board_auth_token_expired", "invalid_current_password", "no_password", "same_email", "email_taken", "invalid_token", "board_password_required", "board_password_invalid", "jobs_not_found", "jobs_invalid_filter", "categories_not_found", "skills_not_found", "places_not_found", "companies_not_found", "company_markets_not_found", "company_salary_not_found", "company_category_salary_not_found", "salaries_title_not_found", "salaries_skill_not_found", "salaries_location_not_found", "salaries_title_location_not_found", "salaries_skill_location_not_found", "blog_post_not_found", "blog_author_not_found", "blog_tag_not_found", "talent_not_found", "talent_directory_not_found", "talent_directory_restricted", "job_recommendations_not_found", "recommended_talent_not_found", "job_alert_not_found", "job_alerts_disabled", "candidate_alert_limit_reached", "candidate_alert_not_found", "candidate_entry_not_found", "candidate_handle_taken", "candidate_job_not_found", "candidate_notification_preference_paused", "resume_invalid_file", "resume_upload_forbidden", "applications_external_apply_only", "applications_country_not_allowed", "applications_guest_not_allowed", "applications_job_not_found", "applications_not_found", "applications_resume_invalid_file", "applications_unprocessable", "messaging_application_not_found", "messaging_application_not_linked", "messaging_blocked", "messaging_cannot_block_self", "messaging_cold_rule", "messaging_conversation_not_found", "messaging_disabled", "messaging_edit_window_expired", "messaging_message_deleted", "messaging_message_not_found", "messaging_not_author", "messaging_not_participant", "messaging_not_permitted", "messaging_not_recipient", "messaging_rate_limited", "messaging_recipient_not_found", "messaging_recipient_not_open", "messaging_unsend_window_expired", "employer_applicant_not_found", "employer_ats_unprocessable", "employer_checkout_failed", "employer_company_exists", "employer_company_name_taken", "employer_company_not_found", "employer_job_not_found", "employer_job_slug_taken", "employer_jobs_quota_exceeded", "employer_not_member", "employer_payment_required", "employer_pipeline_stage_not_found", "employer_member_not_found", "employer_invite_not_found", "not_company_admin", "not_company_member", "company_deletion_disabled", "last_admin", "already_member", "already_invited", "invalid_email", "invite_email_mismatch", "candidate_role", "job_not_published", "paywall_already_active", "paywall_disabled", "paywall_invalid_checkout_session", "paywall_no_candidate_profile", "paywall_no_recurring_subscription", "paywall_offer_not_found", "job_posting_logo_lookup_unavailable", "job_posting_logo_not_found", "job_posting_rejected"];
|
|
23
|
+
declare const BOARD_API_ERROR_CODES: readonly ["internal_error", "validation_bad_request", "validation_payload_too_large", "rate_limited", "rate_limit_unavailable", "search_unavailable", "too_many_filter_values", "pagination_invalid_cursor", "pagination_offset_too_large", "auth_unauthenticated", "auth_forbidden", "plan_upgrade_required", "unknown_error", "boards_not_found", "board_page_not_found", "board_auth_email_taken", "board_auth_invalid_credentials", "board_auth_invalid_token", "board_auth_registration_disabled", "board_auth_token_expired", "invalid_current_password", "no_password", "same_email", "email_taken", "invalid_token", "board_password_required", "board_password_invalid", "jobs_not_found", "jobs_invalid_filter", "categories_not_found", "skills_not_found", "places_not_found", "companies_not_found", "company_markets_not_found", "company_salary_not_found", "company_category_salary_not_found", "salaries_title_not_found", "salaries_skill_not_found", "salaries_location_not_found", "salaries_title_location_not_found", "salaries_skill_location_not_found", "blog_post_not_found", "blog_author_not_found", "blog_tag_not_found", "talent_not_found", "talent_directory_not_found", "talent_directory_restricted", "job_recommendations_not_found", "recommended_talent_not_found", "job_alert_not_found", "job_alerts_disabled", "candidate_alert_limit_reached", "candidate_alert_not_found", "candidate_entry_not_found", "candidate_handle_taken", "candidate_job_not_found", "candidate_notification_preference_paused", "resume_invalid_file", "resume_upload_forbidden", "applications_external_apply_only", "applications_country_not_allowed", "applications_guest_not_allowed", "applications_job_not_found", "applications_not_found", "applications_resume_invalid_file", "applications_unprocessable", "messaging_application_not_found", "messaging_application_not_linked", "messaging_blocked", "messaging_cannot_block_self", "messaging_cold_rule", "messaging_conversation_not_found", "messaging_disabled", "messaging_edit_window_expired", "messaging_message_deleted", "messaging_message_not_found", "messaging_not_author", "messaging_not_participant", "messaging_not_permitted", "messaging_not_recipient", "messaging_rate_limited", "messaging_recipient_not_found", "messaging_recipient_not_open", "messaging_unsend_window_expired", "employer_applicant_not_found", "employer_ats_unprocessable", "employer_checkout_failed", "employer_company_exists", "employer_company_name_taken", "employer_company_not_found", "employer_job_not_found", "employer_job_slug_taken", "employer_jobs_quota_exceeded", "employer_not_member", "employer_payment_required", "employer_pipeline_stage_not_found", "employer_member_not_found", "employer_invite_not_found", "not_company_admin", "not_company_member", "company_deletion_disabled", "last_admin", "already_member", "already_invited", "invalid_email", "invite_email_mismatch", "candidate_role", "job_not_published", "paywall_already_active", "paywall_disabled", "paywall_invalid_checkout_session", "paywall_no_candidate_profile", "paywall_no_recurring_subscription", "paywall_offer_not_found", "talent_access_unavailable", "company_required", "already_on_plan", "talent_access_required", "messaging_talent_access_required", "stripe_not_connected", "job_posting_logo_lookup_unavailable", "job_posting_logo_not_found", "job_posting_rejected"];
|
|
24
24
|
/**
|
|
25
25
|
* The known code set plus open string — new codes ship additively within v1,
|
|
26
26
|
* so exhaustive narrowing is intentionally impossible.
|
|
@@ -143,7 +143,7 @@ declare function paginate<Q extends Record<string, unknown>, P extends PageShape
|
|
|
143
143
|
* constant because the package is platform-neutral and cannot read
|
|
144
144
|
* package.json at runtime.
|
|
145
145
|
*/
|
|
146
|
-
declare const SDK_VERSION = "4.
|
|
146
|
+
declare const SDK_VERSION = "4.10.0";
|
|
147
147
|
|
|
148
148
|
type SavedJob = Schemas['SavedJob'];
|
|
149
149
|
type SavedJobsListQuery = {
|
|
@@ -306,9 +306,32 @@ type AcceptCompanyMemberInviteBody = Schemas['AcceptCompanyMemberInviteBody'];
|
|
|
306
306
|
/**
|
|
307
307
|
* The viewer's per-employer talent entitlement from
|
|
308
308
|
* `board.me.talentAccess.retrieve` — the talent-CTA signal (sourced from the
|
|
309
|
-
* same subscription/credit-pack truth the talent paywall enforces)
|
|
309
|
+
* same subscription/credit-pack truth the talent paywall enforces), plus
|
|
310
|
+
* charging model and remaining unlock/message credits.
|
|
310
311
|
*/
|
|
311
312
|
type TalentAccess = Schemas['TalentAccess'];
|
|
313
|
+
/** Per-candidate unlock/credit gate from `board.me.talentAccess.retrieveCandidate`. */
|
|
314
|
+
type TalentCandidateAccess = Schemas['TalentCandidateAccess'];
|
|
315
|
+
/** Body for `board.me.talentAccess.checkout`. */
|
|
316
|
+
type TalentAccessCheckoutBody = Schemas['TalentAccessCheckoutBody'];
|
|
317
|
+
/**
|
|
318
|
+
* Connected-account mount kit from `board.me.talentAccess.checkout` — same
|
|
319
|
+
* generated schema as candidate-access checkout (`origin: talent_access`).
|
|
320
|
+
*/
|
|
321
|
+
type TalentAccessCheckoutSession = Schemas['AccessCheckoutSession'];
|
|
322
|
+
/** Polled state of a talent-access checkout session (`board.me.talentAccess.retrieveCheckout`). */
|
|
323
|
+
type TalentAccessCheckoutSessionState = Schemas['AccessCheckoutSessionState'];
|
|
324
|
+
/** Result of `board.me.talentAccess.unlock`. */
|
|
325
|
+
type TalentUnlock = Schemas['TalentUnlock'];
|
|
326
|
+
/** Body for `board.me.talentAccess.unlock`. */
|
|
327
|
+
type TalentUnlockBody = Schemas['TalentUnlockBody'];
|
|
328
|
+
/** Body for `board.me.talentAccess.upgrade`. */
|
|
329
|
+
type TalentAccessUpgradeBody = Schemas['TalentAccessUpgradeBody'];
|
|
330
|
+
/**
|
|
331
|
+
* Acknowledgement from `board.me.talentAccess.upgrade` — entitlement (new
|
|
332
|
+
* credit counters) lands via webhook; re-read `me.talentAccess.retrieve`.
|
|
333
|
+
*/
|
|
334
|
+
type TalentAccessUpgrade = Schemas['TalentUpgrade'];
|
|
312
335
|
/** Query for `board.me.companies.search`. */
|
|
313
336
|
type EmployerCompanySearchQuery = {
|
|
314
337
|
q: string;
|
|
@@ -389,6 +412,10 @@ type EmployerBillingOption = Schemas['EmployerBillingOption'];
|
|
|
389
412
|
/** The result of `board.me.companies.jobs.checkout`. */
|
|
390
413
|
type EmployerCheckout = Schemas['EmployerCheckout'];
|
|
391
414
|
type EmployerCheckoutBody = Schemas['EmployerCheckoutBody'];
|
|
415
|
+
/** Optional body for `board.me.companies.billingPortal.create`. */
|
|
416
|
+
type CompanyBillingPortalBody = Schemas['CompanyBillingPortalBody'];
|
|
417
|
+
/** A minted company Stripe Customer Portal session (job posting + talent access). */
|
|
418
|
+
type CompanyBillingPortalSession = Schemas['CompanyBillingPortalSession'];
|
|
392
419
|
|
|
393
420
|
/**
|
|
394
421
|
* Pure derivations for a message thread — kept out of
|
|
@@ -2035,6 +2062,12 @@ declare function createBoardClient(options: CreateBoardClientOptions): {
|
|
|
2035
2062
|
renewsAt: string | null;
|
|
2036
2063
|
}>>;
|
|
2037
2064
|
};
|
|
2065
|
+
billingPortal: {
|
|
2066
|
+
create(slug: string, body?: CompanyBillingPortalBody, options?: FetchOptions): Promise<{
|
|
2067
|
+
object: "portal_session";
|
|
2068
|
+
url: string;
|
|
2069
|
+
}>;
|
|
2070
|
+
};
|
|
2038
2071
|
jobStats: {
|
|
2039
2072
|
retrieve(slug: string, options?: FetchOptions): Promise<ListEnvelope<{
|
|
2040
2073
|
object: "employer_job_stat";
|
|
@@ -2098,6 +2131,44 @@ declare function createBoardClient(options: CreateBoardClientOptions): {
|
|
|
2098
2131
|
paywallActive: boolean;
|
|
2099
2132
|
hasTalentAccess: boolean;
|
|
2100
2133
|
hasUnlimitedUnlocks: boolean;
|
|
2134
|
+
accessModel: "none" | "paid_messaging" | "paid_unlocks_and_messaging";
|
|
2135
|
+
companyId: string | null;
|
|
2136
|
+
unlockCreditsRemaining: number;
|
|
2137
|
+
messageCreditsRemaining: number;
|
|
2138
|
+
hasUnlimitedMessages: boolean;
|
|
2139
|
+
}>;
|
|
2140
|
+
retrieveCandidate(candidateId: string, options?: FetchOptions): Promise<{
|
|
2141
|
+
object: "talent_candidate_access";
|
|
2142
|
+
candidateId: string;
|
|
2143
|
+
companyId: string | null;
|
|
2144
|
+
alreadyUnlocked: boolean;
|
|
2145
|
+
unlockCreditsRemaining: number;
|
|
2146
|
+
messageCreditsRemaining: number;
|
|
2147
|
+
hasUnlimitedUnlocks: boolean;
|
|
2148
|
+
hasUnlimitedMessages: boolean;
|
|
2149
|
+
hasActiveTalentSubscription: boolean;
|
|
2150
|
+
}>;
|
|
2151
|
+
checkout(body: TalentAccessCheckoutBody, options?: FetchOptions): Promise<{
|
|
2152
|
+
object: "checkout_session";
|
|
2153
|
+
sessionId: string;
|
|
2154
|
+
clientSecret: string;
|
|
2155
|
+
stripeAccountId: string;
|
|
2156
|
+
publishableKey: string;
|
|
2157
|
+
offerType: "recurring" | "lifetime";
|
|
2158
|
+
}>;
|
|
2159
|
+
retrieveCheckout(sessionId: string, options?: FetchOptions): Promise<{
|
|
2160
|
+
object: "checkout_session_state";
|
|
2161
|
+
status: "open" | "complete" | "expired";
|
|
2162
|
+
clientSecret: string | null;
|
|
2163
|
+
}>;
|
|
2164
|
+
unlock(body: TalentUnlockBody, options?: FetchOptions): Promise<{
|
|
2165
|
+
object: "talent_unlock";
|
|
2166
|
+
alreadyUnlocked: boolean;
|
|
2167
|
+
unlockCreditsRemaining: number | null;
|
|
2168
|
+
}>;
|
|
2169
|
+
upgrade(body: TalentAccessUpgradeBody, options?: FetchOptions): Promise<{
|
|
2170
|
+
object: "talent_upgrade";
|
|
2171
|
+
ok: true;
|
|
2101
2172
|
}>;
|
|
2102
2173
|
};
|
|
2103
2174
|
alerts: {
|
|
@@ -3156,6 +3227,7 @@ declare function createBoardClient(options: CreateBoardClientOptions): {
|
|
|
3156
3227
|
list(query?: TalentDirectoryQuery, options?: FetchOptions): Promise<TalentDirectoryListEnvelope>;
|
|
3157
3228
|
retrieve(handle: string, options?: FetchOptions): Promise<{
|
|
3158
3229
|
object: "talent_profile";
|
|
3230
|
+
id: string;
|
|
3159
3231
|
handle: string | null;
|
|
3160
3232
|
displayName: string | null;
|
|
3161
3233
|
headline: string | null;
|
|
@@ -3209,4 +3281,4 @@ declare function createBoardClient(options: CreateBoardClientOptions): {
|
|
|
3209
3281
|
};
|
|
3210
3282
|
type BoardSdk = ReturnType<typeof createBoardClient>;
|
|
3211
3283
|
|
|
3212
|
-
export { type AcceptCompanyMemberInviteBody, type AccessCheckoutBody, type AccessCheckoutSession, type AccessCheckoutSessionState, type AccessGrant, type AccessPortalBody, type AccessPortalSession, type AddApplicantNoteBody, type Alert, type AlertBody, type Application, type ApplicationsListQuery, type ApplyAction, type ApplyApprovalPlan, type ApplyApprovalReceipt, type ApplyBody, type ApplyIntent, Awaitable, BOARD_API_ERROR_CODES, type Block, type BlockStatus, type BlockUserBody, type BlockedUser, BlogPostsListQuery, BlogSearchBody, BlogSimilarQuery, type BoardAccessGrant, BoardApiError, type BoardApiErrorCode, type BoardAuthSession, BoardClient, BoardRequest, type BoardSdk, type BoardUser, type BulkMoveApplicantsBody, type BulkRejectApplicantsBody, type CandidateAvatar, type CandidateEducation, type CandidateExperience, type CandidateLanguage, type CandidateProfile, type CandidateSkill, type ClaimableCompany, CompaniesListQuery, CompaniesSearchBody, CompanyJobsListQuery, CompanyListEnvelope, CompanyMarketsListQuery, type CompanyMember, type CompanyMemberInvite, type CompanyMemberInviteAcceptance, type CompanyMembership, CompanySimilarQuery, type ConfirmEmailChangeBody, type ConfirmWorkEmailBody, type ConsumeMagicLinkBody, type Conversation, type ConversationArchive, type ConversationDetail, type ConversationRef, type ConversationsListQuery, type CreateApplyApprovalBody, type CreateApplyIntentBody, type CreateBoardClientOptions, type CreateCompanyBody, type CreateCompanyMemberInviteBody, type CreateEducationBody, type CreateEmployerJobBody, type CreateExperienceBody, type CreateJobPostingInput, type CreatePipelineStageBody, type EditMessageBody, type EmbedJobsQuery, type EmployerApplicant, type EmployerBillingOption, type EmployerCheckout, type EmployerCheckoutBody, type EmployerCompany, type EmployerCompanySearchQuery, type EmployerJob, type EmployerJobStat, type EmployerJobStatsPoint, type EmployerJobStatsTimeseriesQuery, type EmployerJobSummary, type EmployerJobsListQuery, type EmployerPipeline, type EmployerPipelineQuery, type EmployerPipelineStage, type EmployerProfileStats, type EmployerProfileViewsPoint, type EmployerProfileViewsTimeseriesQuery, EmploymentType, FetchOptions, type FindExistingConversationQuery, type ForgotPasswordBody, type HandleAvailability, type JobAlertConfirmation, type JobAlertDeletePreferenceInput, type JobAlertFiltersInput, type JobAlertFrequency, type JobAlertManageQuery, type JobAlertManageResult, type JobAlertManageState, type JobAlertManageTokenInput, type JobAlertPreference, type JobAlertRemoteOption, type JobAlertResendResult, type JobAlertStoredFilters, type JobAlertSubscribeInput, type JobAlertSubscription, type JobAlertUpdatePreferenceInput, JobCardListEnvelope, JobCardSearchEnvelope, type JobPostingBillingOptions, type JobPostingBillingVerification, type JobPostingLogoResult, type JobPostingPlan, type JobPostingResult, JobsListQuery, JobsSearchBody, JobsSimilarQuery, ListEnvelope, Logger, type LoginBody, type LogoutBody, type MarketingConsent, type Message, type ModerationReport, type MoveApplicantStageBody, type NotificationPreference, type OAuthAuthorizationQuery, type OAuthAuthorizationUrl, type OAuthExchangeBody, type OAuthProvider, type Paginator, type PaywallOffer, type PaywallOfferListEnvelope, type PlacesListQuery, type Plan, type PlanListEnvelope, type PlansListQuery, type PublicPlace, type PublicTaxonomyTerm, type ReadReceipt, type RecommendedJob, type RecommendedJobsListQuery, type RecommendedTalent, type RecommendedTalentListQuery, type RedirectResolution, type RefreshBody, type RegisterBody, RemoteOption, type RemotePermitTaxonomyEntry, type ReorderPipelineStagesBody, type ReplyBody, type ReportBody, type RequestEmailChangeBody, type RequestMagicLinkBody, type ResetPasswordBody, type Resume, type ResumeUploadOptions, SDK_VERSION, SalaryDetailQuery, type SalesLedPlan, type SalesLedPlanListEnvelope, type SaveJobBody, type SavedJob, type SavedJobsListQuery, SearchEnvelope, SearchSuggestQuery, type SendWorkEmailBody, Seniority, type StartAboutApplicationBody, type StartConversationBody, StorageMode, type TalentAccess, type TalentDirectoryEntry, type TalentDirectoryListEnvelope, type TalentDirectoryQuery, type TalentProfile, type TaxonomyGeo, type TaxonomyListQuery, type TaxonomyResolution, type ThreadMessagesQuery, type UnreadCount, type UnsubscribeBody, type UpdateApplicationFactsBody, type UpdateCandidateProfileBody, type UpdateCompanyMemberRoleBody, type UpdateEducationBody, type UpdateEmployerCompanyBody, type UpdateEmployerJobBody, type UpdateExperienceBody, type UpdateLanguagesBody, type UpdateNotificationPreferenceBody, type UpdatePasswordBody, type UpdatePipelineStageBody, type UpdateSkillsBody, type VerifyEmailBody, createBoardClient, isBoardApiError, isBoardPasswordRequired, isColdRule, isConflict, isForbidden, isNotFound, isOwnMessage, isRateLimited, isSafeApplicationUrl, isUnauthorized, isValidationError, lastOwnMessageId, paginate, resolveApplyAction };
|
|
3284
|
+
export { type AcceptCompanyMemberInviteBody, type AccessCheckoutBody, type AccessCheckoutSession, type AccessCheckoutSessionState, type AccessGrant, type AccessPortalBody, type AccessPortalSession, type AddApplicantNoteBody, type Alert, type AlertBody, type Application, type ApplicationsListQuery, type ApplyAction, type ApplyApprovalPlan, type ApplyApprovalReceipt, type ApplyBody, type ApplyIntent, Awaitable, BOARD_API_ERROR_CODES, type Block, type BlockStatus, type BlockUserBody, type BlockedUser, BlogPostsListQuery, BlogSearchBody, BlogSimilarQuery, type BoardAccessGrant, BoardApiError, type BoardApiErrorCode, type BoardAuthSession, BoardClient, BoardRequest, type BoardSdk, type BoardUser, type BulkMoveApplicantsBody, type BulkRejectApplicantsBody, type CandidateAvatar, type CandidateEducation, type CandidateExperience, type CandidateLanguage, type CandidateProfile, type CandidateSkill, type ClaimableCompany, CompaniesListQuery, CompaniesSearchBody, type CompanyBillingPortalBody, type CompanyBillingPortalSession, CompanyJobsListQuery, CompanyListEnvelope, CompanyMarketsListQuery, type CompanyMember, type CompanyMemberInvite, type CompanyMemberInviteAcceptance, type CompanyMembership, CompanySimilarQuery, type ConfirmEmailChangeBody, type ConfirmWorkEmailBody, type ConsumeMagicLinkBody, type Conversation, type ConversationArchive, type ConversationDetail, type ConversationRef, type ConversationsListQuery, type CreateApplyApprovalBody, type CreateApplyIntentBody, type CreateBoardClientOptions, type CreateCompanyBody, type CreateCompanyMemberInviteBody, type CreateEducationBody, type CreateEmployerJobBody, type CreateExperienceBody, type CreateJobPostingInput, type CreatePipelineStageBody, type EditMessageBody, type EmbedJobsQuery, type EmployerApplicant, type EmployerBillingOption, type EmployerCheckout, type EmployerCheckoutBody, type EmployerCompany, type EmployerCompanySearchQuery, type EmployerJob, type EmployerJobStat, type EmployerJobStatsPoint, type EmployerJobStatsTimeseriesQuery, type EmployerJobSummary, type EmployerJobsListQuery, type EmployerPipeline, type EmployerPipelineQuery, type EmployerPipelineStage, type EmployerProfileStats, type EmployerProfileViewsPoint, type EmployerProfileViewsTimeseriesQuery, EmploymentType, FetchOptions, type FindExistingConversationQuery, type ForgotPasswordBody, type HandleAvailability, type JobAlertConfirmation, type JobAlertDeletePreferenceInput, type JobAlertFiltersInput, type JobAlertFrequency, type JobAlertManageQuery, type JobAlertManageResult, type JobAlertManageState, type JobAlertManageTokenInput, type JobAlertPreference, type JobAlertRemoteOption, type JobAlertResendResult, type JobAlertStoredFilters, type JobAlertSubscribeInput, type JobAlertSubscription, type JobAlertUpdatePreferenceInput, JobCardListEnvelope, JobCardSearchEnvelope, type JobPostingBillingOptions, type JobPostingBillingVerification, type JobPostingLogoResult, type JobPostingPlan, type JobPostingResult, JobsListQuery, JobsSearchBody, JobsSimilarQuery, ListEnvelope, Logger, type LoginBody, type LogoutBody, type MarketingConsent, type Message, type ModerationReport, type MoveApplicantStageBody, type NotificationPreference, type OAuthAuthorizationQuery, type OAuthAuthorizationUrl, type OAuthExchangeBody, type OAuthProvider, type Paginator, type PaywallOffer, type PaywallOfferListEnvelope, type PlacesListQuery, type Plan, type PlanListEnvelope, type PlansListQuery, type PublicPlace, type PublicTaxonomyTerm, type ReadReceipt, type RecommendedJob, type RecommendedJobsListQuery, type RecommendedTalent, type RecommendedTalentListQuery, type RedirectResolution, type RefreshBody, type RegisterBody, RemoteOption, type RemotePermitTaxonomyEntry, type ReorderPipelineStagesBody, type ReplyBody, type ReportBody, type RequestEmailChangeBody, type RequestMagicLinkBody, type ResetPasswordBody, type Resume, type ResumeUploadOptions, SDK_VERSION, SalaryDetailQuery, type SalesLedPlan, type SalesLedPlanListEnvelope, type SaveJobBody, type SavedJob, type SavedJobsListQuery, SearchEnvelope, SearchSuggestQuery, type SendWorkEmailBody, Seniority, type StartAboutApplicationBody, type StartConversationBody, StorageMode, type TalentAccess, type TalentAccessCheckoutBody, type TalentAccessCheckoutSession, type TalentAccessCheckoutSessionState, type TalentAccessUpgrade, type TalentAccessUpgradeBody, type TalentCandidateAccess, type TalentDirectoryEntry, type TalentDirectoryListEnvelope, type TalentDirectoryQuery, type TalentProfile, type TalentUnlock, type TalentUnlockBody, type TaxonomyGeo, type TaxonomyListQuery, type TaxonomyResolution, type ThreadMessagesQuery, type UnreadCount, type UnsubscribeBody, type UpdateApplicationFactsBody, type UpdateCandidateProfileBody, type UpdateCompanyMemberRoleBody, type UpdateEducationBody, type UpdateEmployerCompanyBody, type UpdateEmployerJobBody, type UpdateExperienceBody, type UpdateLanguagesBody, type UpdateNotificationPreferenceBody, type UpdatePasswordBody, type UpdatePipelineStageBody, type UpdateSkillsBody, type VerifyEmailBody, createBoardClient, isBoardApiError, isBoardPasswordRequired, isColdRule, isConflict, isForbidden, isNotFound, isOwnMessage, isRateLimited, isSafeApplicationUrl, isUnauthorized, isValidationError, lastOwnMessageId, paginate, resolveApplyAction };
|
package/dist/index.d.ts
CHANGED
|
@@ -1,13 +1,13 @@
|
|
|
1
|
-
import { S as Schemas, c as components } from './_spec-
|
|
2
|
-
import { F as FetchOptions, S as StorageMode, B as BoardRequest, A as Awaitable, L as Logger, a as BoardClient, b as SearchSuggestQuery } from './search-
|
|
3
|
-
export { c as ACCESS_TOKEN_KEY, d as BOARD_ACCESS_GRANT_KEY, C as CompanySuggestion, e as CustomStorage, M as MarketSuggestion, R as REFRESH_TOKEN_KEY, f as SearchSuggestType, g as SuggestResult, h as SuggestionItem, T as TermSuggestion } from './search-
|
|
4
|
-
import { c as CompaniesListQuery, d as CompanyListEnvelope, e as CompaniesSearchBody, f as CompanyJobsListQuery, g as CompanySimilarQuery, h as CompanyMarketsListQuery, i as SalaryDetailQuery } from './board-
|
|
5
|
-
export { a as CompanyCategorySalary, j as CompanyMarket, k as CompanyMarketRef, b as CompanySalary, l as CompanySalarySummary, C as CustomFieldDefinition, m as CustomFieldOption, n as CustomFieldType, L as LocationSalaryDetail, o as LocationSkillsIndex, p as LocationTitlesIndex, P as PublicBoard, q as PublicBoardAds, r as PublicBoardAnalytics, s as PublicBoardFeatures, t as PublicBoardJobForm, u as PublicCompany, v as PublicCompanyDetail, w as SalaryCompany, x as SalaryLocation, y as SalarySkill, z as SalaryTitle, A as SkillLocationSalary, B as SkillLocationsIndex, S as SkillSalaryDetail, D as TitleLocationSalary, E as TitleLocationsIndex, T as TitleSalaryDetail } from './board-
|
|
6
|
-
export { B as BoardSeo } from './seo-
|
|
7
|
-
import { R as RemoteOption, E as EmploymentType, S as Seniority, L as ListEnvelope, a as JobsListQuery, b as JobCardListEnvelope, c as JobsSearchBody, d as JobCardSearchEnvelope, e as JobsSimilarQuery, f as SearchEnvelope } from './jobs-
|
|
8
|
-
export { g as CustomFieldValue, C as CustomFieldValues, h as EducationRequirement, i as JobCatalogPagination, j as JobCompany, J as JobSort, O as OfficeLocation, k as OffsetPagination, P as PublicJob, l as PublicJobCard, m as RelatedSearch, n as RemotePermit, o as RemoteTimezone, p as StorefrontPagination } from './jobs-
|
|
9
|
-
import { a as BlogPostsListQuery, b as BlogSimilarQuery, c as BlogSearchBody } from './blog-
|
|
10
|
-
export { B as BlogAuthorEmbed, d as BlogTagEmbed, e as PublicBlogAdjacentPosts, f as PublicBlogAuthor, g as PublicBlogPost, P as PublicBlogPostSummary, h as PublicBlogTag } from './blog-
|
|
1
|
+
import { S as Schemas, c as components } from './_spec-BwUP7Wni.js';
|
|
2
|
+
import { F as FetchOptions, S as StorageMode, B as BoardRequest, A as Awaitable, L as Logger, a as BoardClient, b as SearchSuggestQuery } from './search-Sl9-xi1z.js';
|
|
3
|
+
export { c as ACCESS_TOKEN_KEY, d as BOARD_ACCESS_GRANT_KEY, C as CompanySuggestion, e as CustomStorage, M as MarketSuggestion, R as REFRESH_TOKEN_KEY, f as SearchSuggestType, g as SuggestResult, h as SuggestionItem, T as TermSuggestion } from './search-Sl9-xi1z.js';
|
|
4
|
+
import { c as CompaniesListQuery, d as CompanyListEnvelope, e as CompaniesSearchBody, f as CompanyJobsListQuery, g as CompanySimilarQuery, h as CompanyMarketsListQuery, i as SalaryDetailQuery } from './board-zdQ875ck.js';
|
|
5
|
+
export { a as CompanyCategorySalary, j as CompanyMarket, k as CompanyMarketRef, b as CompanySalary, l as CompanySalarySummary, C as CustomFieldDefinition, m as CustomFieldOption, n as CustomFieldType, L as LocationSalaryDetail, o as LocationSkillsIndex, p as LocationTitlesIndex, P as PublicBoard, q as PublicBoardAds, r as PublicBoardAnalytics, s as PublicBoardFeatures, t as PublicBoardJobForm, u as PublicCompany, v as PublicCompanyDetail, w as SalaryCompany, x as SalaryLocation, y as SalarySkill, z as SalaryTitle, A as SkillLocationSalary, B as SkillLocationsIndex, S as SkillSalaryDetail, D as TitleLocationSalary, E as TitleLocationsIndex, T as TitleSalaryDetail } from './board-zdQ875ck.js';
|
|
6
|
+
export { B as BoardSeo } from './seo-D1Vc_0HF.js';
|
|
7
|
+
import { R as RemoteOption, E as EmploymentType, S as Seniority, L as ListEnvelope, a as JobsListQuery, b as JobCardListEnvelope, c as JobsSearchBody, d as JobCardSearchEnvelope, e as JobsSimilarQuery, f as SearchEnvelope } from './jobs-B-uO7ffG.js';
|
|
8
|
+
export { g as CustomFieldValue, C as CustomFieldValues, h as EducationRequirement, i as JobCatalogPagination, j as JobCompany, J as JobSort, O as OfficeLocation, k as OffsetPagination, P as PublicJob, l as PublicJobCard, m as RelatedSearch, n as RemotePermit, o as RemoteTimezone, p as StorefrontPagination } from './jobs-B-uO7ffG.js';
|
|
9
|
+
import { a as BlogPostsListQuery, b as BlogSimilarQuery, c as BlogSearchBody } from './blog-DC4BfQqF.js';
|
|
10
|
+
export { B as BlogAuthorEmbed, d as BlogTagEmbed, e as PublicBlogAdjacentPosts, f as PublicBlogAuthor, g as PublicBlogPost, P as PublicBlogPostSummary, h as PublicBlogTag } from './blog-DC4BfQqF.js';
|
|
11
11
|
|
|
12
12
|
/**
|
|
13
13
|
* Well-known `<domain>_<snake_reason>` codes the Board API sends, grouped by
|
|
@@ -20,7 +20,7 @@ export { B as BlogAuthorEmbed, d as BlogTagEmbed, e as PublicBlogAdjacentPosts,
|
|
|
20
20
|
* `unknown_error` is SDK-synthesized when a response carries no parseable
|
|
21
21
|
* envelope.
|
|
22
22
|
*/
|
|
23
|
-
declare const BOARD_API_ERROR_CODES: readonly ["internal_error", "validation_bad_request", "validation_payload_too_large", "rate_limited", "rate_limit_unavailable", "search_unavailable", "too_many_filter_values", "pagination_invalid_cursor", "pagination_offset_too_large", "auth_unauthenticated", "auth_forbidden", "plan_upgrade_required", "unknown_error", "boards_not_found", "board_page_not_found", "board_auth_email_taken", "board_auth_invalid_credentials", "board_auth_invalid_token", "board_auth_registration_disabled", "board_auth_token_expired", "invalid_current_password", "no_password", "same_email", "email_taken", "invalid_token", "board_password_required", "board_password_invalid", "jobs_not_found", "jobs_invalid_filter", "categories_not_found", "skills_not_found", "places_not_found", "companies_not_found", "company_markets_not_found", "company_salary_not_found", "company_category_salary_not_found", "salaries_title_not_found", "salaries_skill_not_found", "salaries_location_not_found", "salaries_title_location_not_found", "salaries_skill_location_not_found", "blog_post_not_found", "blog_author_not_found", "blog_tag_not_found", "talent_not_found", "talent_directory_not_found", "talent_directory_restricted", "job_recommendations_not_found", "recommended_talent_not_found", "job_alert_not_found", "job_alerts_disabled", "candidate_alert_limit_reached", "candidate_alert_not_found", "candidate_entry_not_found", "candidate_handle_taken", "candidate_job_not_found", "candidate_notification_preference_paused", "resume_invalid_file", "resume_upload_forbidden", "applications_external_apply_only", "applications_country_not_allowed", "applications_guest_not_allowed", "applications_job_not_found", "applications_not_found", "applications_resume_invalid_file", "applications_unprocessable", "messaging_application_not_found", "messaging_application_not_linked", "messaging_blocked", "messaging_cannot_block_self", "messaging_cold_rule", "messaging_conversation_not_found", "messaging_disabled", "messaging_edit_window_expired", "messaging_message_deleted", "messaging_message_not_found", "messaging_not_author", "messaging_not_participant", "messaging_not_permitted", "messaging_not_recipient", "messaging_rate_limited", "messaging_recipient_not_found", "messaging_recipient_not_open", "messaging_unsend_window_expired", "employer_applicant_not_found", "employer_ats_unprocessable", "employer_checkout_failed", "employer_company_exists", "employer_company_name_taken", "employer_company_not_found", "employer_job_not_found", "employer_job_slug_taken", "employer_jobs_quota_exceeded", "employer_not_member", "employer_payment_required", "employer_pipeline_stage_not_found", "employer_member_not_found", "employer_invite_not_found", "not_company_admin", "not_company_member", "company_deletion_disabled", "last_admin", "already_member", "already_invited", "invalid_email", "invite_email_mismatch", "candidate_role", "job_not_published", "paywall_already_active", "paywall_disabled", "paywall_invalid_checkout_session", "paywall_no_candidate_profile", "paywall_no_recurring_subscription", "paywall_offer_not_found", "job_posting_logo_lookup_unavailable", "job_posting_logo_not_found", "job_posting_rejected"];
|
|
23
|
+
declare const BOARD_API_ERROR_CODES: readonly ["internal_error", "validation_bad_request", "validation_payload_too_large", "rate_limited", "rate_limit_unavailable", "search_unavailable", "too_many_filter_values", "pagination_invalid_cursor", "pagination_offset_too_large", "auth_unauthenticated", "auth_forbidden", "plan_upgrade_required", "unknown_error", "boards_not_found", "board_page_not_found", "board_auth_email_taken", "board_auth_invalid_credentials", "board_auth_invalid_token", "board_auth_registration_disabled", "board_auth_token_expired", "invalid_current_password", "no_password", "same_email", "email_taken", "invalid_token", "board_password_required", "board_password_invalid", "jobs_not_found", "jobs_invalid_filter", "categories_not_found", "skills_not_found", "places_not_found", "companies_not_found", "company_markets_not_found", "company_salary_not_found", "company_category_salary_not_found", "salaries_title_not_found", "salaries_skill_not_found", "salaries_location_not_found", "salaries_title_location_not_found", "salaries_skill_location_not_found", "blog_post_not_found", "blog_author_not_found", "blog_tag_not_found", "talent_not_found", "talent_directory_not_found", "talent_directory_restricted", "job_recommendations_not_found", "recommended_talent_not_found", "job_alert_not_found", "job_alerts_disabled", "candidate_alert_limit_reached", "candidate_alert_not_found", "candidate_entry_not_found", "candidate_handle_taken", "candidate_job_not_found", "candidate_notification_preference_paused", "resume_invalid_file", "resume_upload_forbidden", "applications_external_apply_only", "applications_country_not_allowed", "applications_guest_not_allowed", "applications_job_not_found", "applications_not_found", "applications_resume_invalid_file", "applications_unprocessable", "messaging_application_not_found", "messaging_application_not_linked", "messaging_blocked", "messaging_cannot_block_self", "messaging_cold_rule", "messaging_conversation_not_found", "messaging_disabled", "messaging_edit_window_expired", "messaging_message_deleted", "messaging_message_not_found", "messaging_not_author", "messaging_not_participant", "messaging_not_permitted", "messaging_not_recipient", "messaging_rate_limited", "messaging_recipient_not_found", "messaging_recipient_not_open", "messaging_unsend_window_expired", "employer_applicant_not_found", "employer_ats_unprocessable", "employer_checkout_failed", "employer_company_exists", "employer_company_name_taken", "employer_company_not_found", "employer_job_not_found", "employer_job_slug_taken", "employer_jobs_quota_exceeded", "employer_not_member", "employer_payment_required", "employer_pipeline_stage_not_found", "employer_member_not_found", "employer_invite_not_found", "not_company_admin", "not_company_member", "company_deletion_disabled", "last_admin", "already_member", "already_invited", "invalid_email", "invite_email_mismatch", "candidate_role", "job_not_published", "paywall_already_active", "paywall_disabled", "paywall_invalid_checkout_session", "paywall_no_candidate_profile", "paywall_no_recurring_subscription", "paywall_offer_not_found", "talent_access_unavailable", "company_required", "already_on_plan", "talent_access_required", "messaging_talent_access_required", "stripe_not_connected", "job_posting_logo_lookup_unavailable", "job_posting_logo_not_found", "job_posting_rejected"];
|
|
24
24
|
/**
|
|
25
25
|
* The known code set plus open string — new codes ship additively within v1,
|
|
26
26
|
* so exhaustive narrowing is intentionally impossible.
|
|
@@ -143,7 +143,7 @@ declare function paginate<Q extends Record<string, unknown>, P extends PageShape
|
|
|
143
143
|
* constant because the package is platform-neutral and cannot read
|
|
144
144
|
* package.json at runtime.
|
|
145
145
|
*/
|
|
146
|
-
declare const SDK_VERSION = "4.
|
|
146
|
+
declare const SDK_VERSION = "4.10.0";
|
|
147
147
|
|
|
148
148
|
type SavedJob = Schemas['SavedJob'];
|
|
149
149
|
type SavedJobsListQuery = {
|
|
@@ -306,9 +306,32 @@ type AcceptCompanyMemberInviteBody = Schemas['AcceptCompanyMemberInviteBody'];
|
|
|
306
306
|
/**
|
|
307
307
|
* The viewer's per-employer talent entitlement from
|
|
308
308
|
* `board.me.talentAccess.retrieve` — the talent-CTA signal (sourced from the
|
|
309
|
-
* same subscription/credit-pack truth the talent paywall enforces)
|
|
309
|
+
* same subscription/credit-pack truth the talent paywall enforces), plus
|
|
310
|
+
* charging model and remaining unlock/message credits.
|
|
310
311
|
*/
|
|
311
312
|
type TalentAccess = Schemas['TalentAccess'];
|
|
313
|
+
/** Per-candidate unlock/credit gate from `board.me.talentAccess.retrieveCandidate`. */
|
|
314
|
+
type TalentCandidateAccess = Schemas['TalentCandidateAccess'];
|
|
315
|
+
/** Body for `board.me.talentAccess.checkout`. */
|
|
316
|
+
type TalentAccessCheckoutBody = Schemas['TalentAccessCheckoutBody'];
|
|
317
|
+
/**
|
|
318
|
+
* Connected-account mount kit from `board.me.talentAccess.checkout` — same
|
|
319
|
+
* generated schema as candidate-access checkout (`origin: talent_access`).
|
|
320
|
+
*/
|
|
321
|
+
type TalentAccessCheckoutSession = Schemas['AccessCheckoutSession'];
|
|
322
|
+
/** Polled state of a talent-access checkout session (`board.me.talentAccess.retrieveCheckout`). */
|
|
323
|
+
type TalentAccessCheckoutSessionState = Schemas['AccessCheckoutSessionState'];
|
|
324
|
+
/** Result of `board.me.talentAccess.unlock`. */
|
|
325
|
+
type TalentUnlock = Schemas['TalentUnlock'];
|
|
326
|
+
/** Body for `board.me.talentAccess.unlock`. */
|
|
327
|
+
type TalentUnlockBody = Schemas['TalentUnlockBody'];
|
|
328
|
+
/** Body for `board.me.talentAccess.upgrade`. */
|
|
329
|
+
type TalentAccessUpgradeBody = Schemas['TalentAccessUpgradeBody'];
|
|
330
|
+
/**
|
|
331
|
+
* Acknowledgement from `board.me.talentAccess.upgrade` — entitlement (new
|
|
332
|
+
* credit counters) lands via webhook; re-read `me.talentAccess.retrieve`.
|
|
333
|
+
*/
|
|
334
|
+
type TalentAccessUpgrade = Schemas['TalentUpgrade'];
|
|
312
335
|
/** Query for `board.me.companies.search`. */
|
|
313
336
|
type EmployerCompanySearchQuery = {
|
|
314
337
|
q: string;
|
|
@@ -389,6 +412,10 @@ type EmployerBillingOption = Schemas['EmployerBillingOption'];
|
|
|
389
412
|
/** The result of `board.me.companies.jobs.checkout`. */
|
|
390
413
|
type EmployerCheckout = Schemas['EmployerCheckout'];
|
|
391
414
|
type EmployerCheckoutBody = Schemas['EmployerCheckoutBody'];
|
|
415
|
+
/** Optional body for `board.me.companies.billingPortal.create`. */
|
|
416
|
+
type CompanyBillingPortalBody = Schemas['CompanyBillingPortalBody'];
|
|
417
|
+
/** A minted company Stripe Customer Portal session (job posting + talent access). */
|
|
418
|
+
type CompanyBillingPortalSession = Schemas['CompanyBillingPortalSession'];
|
|
392
419
|
|
|
393
420
|
/**
|
|
394
421
|
* Pure derivations for a message thread — kept out of
|
|
@@ -2035,6 +2062,12 @@ declare function createBoardClient(options: CreateBoardClientOptions): {
|
|
|
2035
2062
|
renewsAt: string | null;
|
|
2036
2063
|
}>>;
|
|
2037
2064
|
};
|
|
2065
|
+
billingPortal: {
|
|
2066
|
+
create(slug: string, body?: CompanyBillingPortalBody, options?: FetchOptions): Promise<{
|
|
2067
|
+
object: "portal_session";
|
|
2068
|
+
url: string;
|
|
2069
|
+
}>;
|
|
2070
|
+
};
|
|
2038
2071
|
jobStats: {
|
|
2039
2072
|
retrieve(slug: string, options?: FetchOptions): Promise<ListEnvelope<{
|
|
2040
2073
|
object: "employer_job_stat";
|
|
@@ -2098,6 +2131,44 @@ declare function createBoardClient(options: CreateBoardClientOptions): {
|
|
|
2098
2131
|
paywallActive: boolean;
|
|
2099
2132
|
hasTalentAccess: boolean;
|
|
2100
2133
|
hasUnlimitedUnlocks: boolean;
|
|
2134
|
+
accessModel: "none" | "paid_messaging" | "paid_unlocks_and_messaging";
|
|
2135
|
+
companyId: string | null;
|
|
2136
|
+
unlockCreditsRemaining: number;
|
|
2137
|
+
messageCreditsRemaining: number;
|
|
2138
|
+
hasUnlimitedMessages: boolean;
|
|
2139
|
+
}>;
|
|
2140
|
+
retrieveCandidate(candidateId: string, options?: FetchOptions): Promise<{
|
|
2141
|
+
object: "talent_candidate_access";
|
|
2142
|
+
candidateId: string;
|
|
2143
|
+
companyId: string | null;
|
|
2144
|
+
alreadyUnlocked: boolean;
|
|
2145
|
+
unlockCreditsRemaining: number;
|
|
2146
|
+
messageCreditsRemaining: number;
|
|
2147
|
+
hasUnlimitedUnlocks: boolean;
|
|
2148
|
+
hasUnlimitedMessages: boolean;
|
|
2149
|
+
hasActiveTalentSubscription: boolean;
|
|
2150
|
+
}>;
|
|
2151
|
+
checkout(body: TalentAccessCheckoutBody, options?: FetchOptions): Promise<{
|
|
2152
|
+
object: "checkout_session";
|
|
2153
|
+
sessionId: string;
|
|
2154
|
+
clientSecret: string;
|
|
2155
|
+
stripeAccountId: string;
|
|
2156
|
+
publishableKey: string;
|
|
2157
|
+
offerType: "recurring" | "lifetime";
|
|
2158
|
+
}>;
|
|
2159
|
+
retrieveCheckout(sessionId: string, options?: FetchOptions): Promise<{
|
|
2160
|
+
object: "checkout_session_state";
|
|
2161
|
+
status: "open" | "complete" | "expired";
|
|
2162
|
+
clientSecret: string | null;
|
|
2163
|
+
}>;
|
|
2164
|
+
unlock(body: TalentUnlockBody, options?: FetchOptions): Promise<{
|
|
2165
|
+
object: "talent_unlock";
|
|
2166
|
+
alreadyUnlocked: boolean;
|
|
2167
|
+
unlockCreditsRemaining: number | null;
|
|
2168
|
+
}>;
|
|
2169
|
+
upgrade(body: TalentAccessUpgradeBody, options?: FetchOptions): Promise<{
|
|
2170
|
+
object: "talent_upgrade";
|
|
2171
|
+
ok: true;
|
|
2101
2172
|
}>;
|
|
2102
2173
|
};
|
|
2103
2174
|
alerts: {
|
|
@@ -3156,6 +3227,7 @@ declare function createBoardClient(options: CreateBoardClientOptions): {
|
|
|
3156
3227
|
list(query?: TalentDirectoryQuery, options?: FetchOptions): Promise<TalentDirectoryListEnvelope>;
|
|
3157
3228
|
retrieve(handle: string, options?: FetchOptions): Promise<{
|
|
3158
3229
|
object: "talent_profile";
|
|
3230
|
+
id: string;
|
|
3159
3231
|
handle: string | null;
|
|
3160
3232
|
displayName: string | null;
|
|
3161
3233
|
headline: string | null;
|
|
@@ -3209,4 +3281,4 @@ declare function createBoardClient(options: CreateBoardClientOptions): {
|
|
|
3209
3281
|
};
|
|
3210
3282
|
type BoardSdk = ReturnType<typeof createBoardClient>;
|
|
3211
3283
|
|
|
3212
|
-
export { type AcceptCompanyMemberInviteBody, type AccessCheckoutBody, type AccessCheckoutSession, type AccessCheckoutSessionState, type AccessGrant, type AccessPortalBody, type AccessPortalSession, type AddApplicantNoteBody, type Alert, type AlertBody, type Application, type ApplicationsListQuery, type ApplyAction, type ApplyApprovalPlan, type ApplyApprovalReceipt, type ApplyBody, type ApplyIntent, Awaitable, BOARD_API_ERROR_CODES, type Block, type BlockStatus, type BlockUserBody, type BlockedUser, BlogPostsListQuery, BlogSearchBody, BlogSimilarQuery, type BoardAccessGrant, BoardApiError, type BoardApiErrorCode, type BoardAuthSession, BoardClient, BoardRequest, type BoardSdk, type BoardUser, type BulkMoveApplicantsBody, type BulkRejectApplicantsBody, type CandidateAvatar, type CandidateEducation, type CandidateExperience, type CandidateLanguage, type CandidateProfile, type CandidateSkill, type ClaimableCompany, CompaniesListQuery, CompaniesSearchBody, CompanyJobsListQuery, CompanyListEnvelope, CompanyMarketsListQuery, type CompanyMember, type CompanyMemberInvite, type CompanyMemberInviteAcceptance, type CompanyMembership, CompanySimilarQuery, type ConfirmEmailChangeBody, type ConfirmWorkEmailBody, type ConsumeMagicLinkBody, type Conversation, type ConversationArchive, type ConversationDetail, type ConversationRef, type ConversationsListQuery, type CreateApplyApprovalBody, type CreateApplyIntentBody, type CreateBoardClientOptions, type CreateCompanyBody, type CreateCompanyMemberInviteBody, type CreateEducationBody, type CreateEmployerJobBody, type CreateExperienceBody, type CreateJobPostingInput, type CreatePipelineStageBody, type EditMessageBody, type EmbedJobsQuery, type EmployerApplicant, type EmployerBillingOption, type EmployerCheckout, type EmployerCheckoutBody, type EmployerCompany, type EmployerCompanySearchQuery, type EmployerJob, type EmployerJobStat, type EmployerJobStatsPoint, type EmployerJobStatsTimeseriesQuery, type EmployerJobSummary, type EmployerJobsListQuery, type EmployerPipeline, type EmployerPipelineQuery, type EmployerPipelineStage, type EmployerProfileStats, type EmployerProfileViewsPoint, type EmployerProfileViewsTimeseriesQuery, EmploymentType, FetchOptions, type FindExistingConversationQuery, type ForgotPasswordBody, type HandleAvailability, type JobAlertConfirmation, type JobAlertDeletePreferenceInput, type JobAlertFiltersInput, type JobAlertFrequency, type JobAlertManageQuery, type JobAlertManageResult, type JobAlertManageState, type JobAlertManageTokenInput, type JobAlertPreference, type JobAlertRemoteOption, type JobAlertResendResult, type JobAlertStoredFilters, type JobAlertSubscribeInput, type JobAlertSubscription, type JobAlertUpdatePreferenceInput, JobCardListEnvelope, JobCardSearchEnvelope, type JobPostingBillingOptions, type JobPostingBillingVerification, type JobPostingLogoResult, type JobPostingPlan, type JobPostingResult, JobsListQuery, JobsSearchBody, JobsSimilarQuery, ListEnvelope, Logger, type LoginBody, type LogoutBody, type MarketingConsent, type Message, type ModerationReport, type MoveApplicantStageBody, type NotificationPreference, type OAuthAuthorizationQuery, type OAuthAuthorizationUrl, type OAuthExchangeBody, type OAuthProvider, type Paginator, type PaywallOffer, type PaywallOfferListEnvelope, type PlacesListQuery, type Plan, type PlanListEnvelope, type PlansListQuery, type PublicPlace, type PublicTaxonomyTerm, type ReadReceipt, type RecommendedJob, type RecommendedJobsListQuery, type RecommendedTalent, type RecommendedTalentListQuery, type RedirectResolution, type RefreshBody, type RegisterBody, RemoteOption, type RemotePermitTaxonomyEntry, type ReorderPipelineStagesBody, type ReplyBody, type ReportBody, type RequestEmailChangeBody, type RequestMagicLinkBody, type ResetPasswordBody, type Resume, type ResumeUploadOptions, SDK_VERSION, SalaryDetailQuery, type SalesLedPlan, type SalesLedPlanListEnvelope, type SaveJobBody, type SavedJob, type SavedJobsListQuery, SearchEnvelope, SearchSuggestQuery, type SendWorkEmailBody, Seniority, type StartAboutApplicationBody, type StartConversationBody, StorageMode, type TalentAccess, type TalentDirectoryEntry, type TalentDirectoryListEnvelope, type TalentDirectoryQuery, type TalentProfile, type TaxonomyGeo, type TaxonomyListQuery, type TaxonomyResolution, type ThreadMessagesQuery, type UnreadCount, type UnsubscribeBody, type UpdateApplicationFactsBody, type UpdateCandidateProfileBody, type UpdateCompanyMemberRoleBody, type UpdateEducationBody, type UpdateEmployerCompanyBody, type UpdateEmployerJobBody, type UpdateExperienceBody, type UpdateLanguagesBody, type UpdateNotificationPreferenceBody, type UpdatePasswordBody, type UpdatePipelineStageBody, type UpdateSkillsBody, type VerifyEmailBody, createBoardClient, isBoardApiError, isBoardPasswordRequired, isColdRule, isConflict, isForbidden, isNotFound, isOwnMessage, isRateLimited, isSafeApplicationUrl, isUnauthorized, isValidationError, lastOwnMessageId, paginate, resolveApplyAction };
|
|
3284
|
+
export { type AcceptCompanyMemberInviteBody, type AccessCheckoutBody, type AccessCheckoutSession, type AccessCheckoutSessionState, type AccessGrant, type AccessPortalBody, type AccessPortalSession, type AddApplicantNoteBody, type Alert, type AlertBody, type Application, type ApplicationsListQuery, type ApplyAction, type ApplyApprovalPlan, type ApplyApprovalReceipt, type ApplyBody, type ApplyIntent, Awaitable, BOARD_API_ERROR_CODES, type Block, type BlockStatus, type BlockUserBody, type BlockedUser, BlogPostsListQuery, BlogSearchBody, BlogSimilarQuery, type BoardAccessGrant, BoardApiError, type BoardApiErrorCode, type BoardAuthSession, BoardClient, BoardRequest, type BoardSdk, type BoardUser, type BulkMoveApplicantsBody, type BulkRejectApplicantsBody, type CandidateAvatar, type CandidateEducation, type CandidateExperience, type CandidateLanguage, type CandidateProfile, type CandidateSkill, type ClaimableCompany, CompaniesListQuery, CompaniesSearchBody, type CompanyBillingPortalBody, type CompanyBillingPortalSession, CompanyJobsListQuery, CompanyListEnvelope, CompanyMarketsListQuery, type CompanyMember, type CompanyMemberInvite, type CompanyMemberInviteAcceptance, type CompanyMembership, CompanySimilarQuery, type ConfirmEmailChangeBody, type ConfirmWorkEmailBody, type ConsumeMagicLinkBody, type Conversation, type ConversationArchive, type ConversationDetail, type ConversationRef, type ConversationsListQuery, type CreateApplyApprovalBody, type CreateApplyIntentBody, type CreateBoardClientOptions, type CreateCompanyBody, type CreateCompanyMemberInviteBody, type CreateEducationBody, type CreateEmployerJobBody, type CreateExperienceBody, type CreateJobPostingInput, type CreatePipelineStageBody, type EditMessageBody, type EmbedJobsQuery, type EmployerApplicant, type EmployerBillingOption, type EmployerCheckout, type EmployerCheckoutBody, type EmployerCompany, type EmployerCompanySearchQuery, type EmployerJob, type EmployerJobStat, type EmployerJobStatsPoint, type EmployerJobStatsTimeseriesQuery, type EmployerJobSummary, type EmployerJobsListQuery, type EmployerPipeline, type EmployerPipelineQuery, type EmployerPipelineStage, type EmployerProfileStats, type EmployerProfileViewsPoint, type EmployerProfileViewsTimeseriesQuery, EmploymentType, FetchOptions, type FindExistingConversationQuery, type ForgotPasswordBody, type HandleAvailability, type JobAlertConfirmation, type JobAlertDeletePreferenceInput, type JobAlertFiltersInput, type JobAlertFrequency, type JobAlertManageQuery, type JobAlertManageResult, type JobAlertManageState, type JobAlertManageTokenInput, type JobAlertPreference, type JobAlertRemoteOption, type JobAlertResendResult, type JobAlertStoredFilters, type JobAlertSubscribeInput, type JobAlertSubscription, type JobAlertUpdatePreferenceInput, JobCardListEnvelope, JobCardSearchEnvelope, type JobPostingBillingOptions, type JobPostingBillingVerification, type JobPostingLogoResult, type JobPostingPlan, type JobPostingResult, JobsListQuery, JobsSearchBody, JobsSimilarQuery, ListEnvelope, Logger, type LoginBody, type LogoutBody, type MarketingConsent, type Message, type ModerationReport, type MoveApplicantStageBody, type NotificationPreference, type OAuthAuthorizationQuery, type OAuthAuthorizationUrl, type OAuthExchangeBody, type OAuthProvider, type Paginator, type PaywallOffer, type PaywallOfferListEnvelope, type PlacesListQuery, type Plan, type PlanListEnvelope, type PlansListQuery, type PublicPlace, type PublicTaxonomyTerm, type ReadReceipt, type RecommendedJob, type RecommendedJobsListQuery, type RecommendedTalent, type RecommendedTalentListQuery, type RedirectResolution, type RefreshBody, type RegisterBody, RemoteOption, type RemotePermitTaxonomyEntry, type ReorderPipelineStagesBody, type ReplyBody, type ReportBody, type RequestEmailChangeBody, type RequestMagicLinkBody, type ResetPasswordBody, type Resume, type ResumeUploadOptions, SDK_VERSION, SalaryDetailQuery, type SalesLedPlan, type SalesLedPlanListEnvelope, type SaveJobBody, type SavedJob, type SavedJobsListQuery, SearchEnvelope, SearchSuggestQuery, type SendWorkEmailBody, Seniority, type StartAboutApplicationBody, type StartConversationBody, StorageMode, type TalentAccess, type TalentAccessCheckoutBody, type TalentAccessCheckoutSession, type TalentAccessCheckoutSessionState, type TalentAccessUpgrade, type TalentAccessUpgradeBody, type TalentCandidateAccess, type TalentDirectoryEntry, type TalentDirectoryListEnvelope, type TalentDirectoryQuery, type TalentProfile, type TalentUnlock, type TalentUnlockBody, type TaxonomyGeo, type TaxonomyListQuery, type TaxonomyResolution, type ThreadMessagesQuery, type UnreadCount, type UnsubscribeBody, type UpdateApplicationFactsBody, type UpdateCandidateProfileBody, type UpdateCompanyMemberRoleBody, type UpdateEducationBody, type UpdateEmployerCompanyBody, type UpdateEmployerJobBody, type UpdateExperienceBody, type UpdateLanguagesBody, type UpdateNotificationPreferenceBody, type UpdatePasswordBody, type UpdatePipelineStageBody, type UpdateSkillsBody, type VerifyEmailBody, createBoardClient, isBoardApiError, isBoardPasswordRequired, isColdRule, isConflict, isForbidden, isNotFound, isOwnMessage, isRateLimited, isSafeApplicationUrl, isUnauthorized, isValidationError, lastOwnMessageId, paginate, resolveApplyAction };
|
package/dist/index.js
CHANGED
|
@@ -179,6 +179,13 @@ var BOARD_API_ERROR_CODES = [
|
|
|
179
179
|
"paywall_no_candidate_profile",
|
|
180
180
|
"paywall_no_recurring_subscription",
|
|
181
181
|
"paywall_offer_not_found",
|
|
182
|
+
// Employer talent-access paywall
|
|
183
|
+
"talent_access_unavailable",
|
|
184
|
+
"company_required",
|
|
185
|
+
"already_on_plan",
|
|
186
|
+
"talent_access_required",
|
|
187
|
+
"messaging_talent_access_required",
|
|
188
|
+
"stripe_not_connected",
|
|
182
189
|
// Public job posting
|
|
183
190
|
"job_posting_logo_lookup_unavailable",
|
|
184
191
|
"job_posting_logo_not_found",
|
|
@@ -335,7 +342,7 @@ async function clearSession(storage) {
|
|
|
335
342
|
}
|
|
336
343
|
|
|
337
344
|
// src/version.ts
|
|
338
|
-
var SDK_VERSION = "4.
|
|
345
|
+
var SDK_VERSION = "4.10.0";
|
|
339
346
|
|
|
340
347
|
// src/client.ts
|
|
341
348
|
function isRawBody(body) {
|
|
@@ -1843,6 +1850,29 @@ function meNamespace(client) {
|
|
|
1843
1850
|
);
|
|
1844
1851
|
}
|
|
1845
1852
|
},
|
|
1853
|
+
/**
|
|
1854
|
+
* Stripe Customer Portal for a company I am an approved member of.
|
|
1855
|
+
* Surfaces every subscription on the company's Stripe customer (job
|
|
1856
|
+
* posting + talent access). Not a talent-access portal — candidate
|
|
1857
|
+
* `me.access.portal` is a different buyer.
|
|
1858
|
+
*/
|
|
1859
|
+
billingPortal: {
|
|
1860
|
+
/**
|
|
1861
|
+
* Mint a Stripe Customer Portal session. Optional `returnPath` is
|
|
1862
|
+
* resolved against the board origin.
|
|
1863
|
+
*
|
|
1864
|
+
* @example
|
|
1865
|
+
* const { url } = await board.me.companies.billingPortal.create('acme', {
|
|
1866
|
+
* returnPath: '/employers/billing',
|
|
1867
|
+
* });
|
|
1868
|
+
*/
|
|
1869
|
+
create(slug, body, options) {
|
|
1870
|
+
return client.fetch(
|
|
1871
|
+
`/me/companies/${encodeURIComponent(slug)}/billing-portal`,
|
|
1872
|
+
{ ...options, method: "POST", body }
|
|
1873
|
+
);
|
|
1874
|
+
}
|
|
1875
|
+
},
|
|
1846
1876
|
/**
|
|
1847
1877
|
* The read-only reporting funnel that backs the hosted employer jobs
|
|
1848
1878
|
* table: per-job views / apply clicks / native applications,
|
|
@@ -2107,9 +2137,11 @@ function meNamespace(client) {
|
|
|
2107
2137
|
}
|
|
2108
2138
|
},
|
|
2109
2139
|
/**
|
|
2110
|
-
* The
|
|
2111
|
-
*
|
|
2112
|
-
* Candidates and unaffiliated viewers get
|
|
2140
|
+
* The employer talent-access paywall — "does this employer have
|
|
2141
|
+
* talent access?" plus remaining company-scoped unlock/message credits
|
|
2142
|
+
* and the charging model. Candidates and unaffiliated viewers get
|
|
2143
|
+
* `hasTalentAccess: false`. Message credits spend inline on
|
|
2144
|
+
* `conversations.start` (no separate spend endpoint).
|
|
2113
2145
|
*
|
|
2114
2146
|
* @example
|
|
2115
2147
|
* const { hasTalentAccess } = await board.me.talentAccess.retrieve();
|
|
@@ -2117,12 +2149,94 @@ function meNamespace(client) {
|
|
|
2117
2149
|
talentAccess: {
|
|
2118
2150
|
/**
|
|
2119
2151
|
* Retrieve the viewer's talent entitlement. Never cache — per-user.
|
|
2152
|
+
* Credits are company-scoped; `companyId` is set when the viewer has
|
|
2153
|
+
* exactly one approved membership, otherwise `null` (pass `companyId`
|
|
2154
|
+
* on writes — `company_required` with more than one).
|
|
2120
2155
|
*
|
|
2121
2156
|
* @example
|
|
2122
2157
|
* const access = await board.me.talentAccess.retrieve();
|
|
2123
2158
|
*/
|
|
2124
2159
|
retrieve(options) {
|
|
2125
2160
|
return client.fetch("/me/talent-access", options);
|
|
2161
|
+
},
|
|
2162
|
+
/**
|
|
2163
|
+
* Per-candidate unlock and credit state for the opaque `/p/{id}`
|
|
2164
|
+
* profile route. Named `/p/{handle}` is the share bypass.
|
|
2165
|
+
*
|
|
2166
|
+
* @example
|
|
2167
|
+
* const gate = await board.me.talentAccess.retrieveCandidate(candidateId);
|
|
2168
|
+
*/
|
|
2169
|
+
retrieveCandidate(candidateId, options) {
|
|
2170
|
+
return client.fetch(
|
|
2171
|
+
`/me/talent-access/candidates/${encodeURIComponent(candidateId)}`,
|
|
2172
|
+
options
|
|
2173
|
+
);
|
|
2174
|
+
},
|
|
2175
|
+
/**
|
|
2176
|
+
* Start embedded checkout for a public `talent_access` plan and return
|
|
2177
|
+
* a connected-account mount kit. Same shape as candidate-access
|
|
2178
|
+
* checkout; session metadata is `origin: talent_access`. `companyId`
|
|
2179
|
+
* is required when the viewer has more than one approved membership
|
|
2180
|
+
* (`company_required`).
|
|
2181
|
+
*
|
|
2182
|
+
* @example
|
|
2183
|
+
* const kit = await board.me.talentAccess.checkout({
|
|
2184
|
+
* planId,
|
|
2185
|
+
* returnPath: '/employers',
|
|
2186
|
+
* colorMode: 'light',
|
|
2187
|
+
* });
|
|
2188
|
+
*/
|
|
2189
|
+
checkout(body, options) {
|
|
2190
|
+
return client.fetch(
|
|
2191
|
+
"/me/talent-access/checkout",
|
|
2192
|
+
{ ...options, method: "POST", body }
|
|
2193
|
+
);
|
|
2194
|
+
},
|
|
2195
|
+
/**
|
|
2196
|
+
* Poll a talent-access checkout session: `open` (re-mountable via
|
|
2197
|
+
* `clientSecret`), `complete`, or `expired`. The session must be
|
|
2198
|
+
* `origin: talent_access` for this board user.
|
|
2199
|
+
*
|
|
2200
|
+
* @example
|
|
2201
|
+
* const s = await board.me.talentAccess.retrieveCheckout(kit.sessionId);
|
|
2202
|
+
*/
|
|
2203
|
+
retrieveCheckout(sessionId, options) {
|
|
2204
|
+
return client.fetch(
|
|
2205
|
+
`/me/talent-access/checkout/${encodeURIComponent(sessionId)}`,
|
|
2206
|
+
options
|
|
2207
|
+
);
|
|
2208
|
+
},
|
|
2209
|
+
/**
|
|
2210
|
+
* Spend one profile-unlock credit. Idempotent: already-unlocked
|
|
2211
|
+
* returns `{ alreadyUnlocked: true }` with no decrement. Credits are
|
|
2212
|
+
* company-scoped; `companyId` is required with multiple approved
|
|
2213
|
+
* memberships (`company_required`).
|
|
2214
|
+
*
|
|
2215
|
+
* @example
|
|
2216
|
+
* const unlock = await board.me.talentAccess.unlock({ candidateId });
|
|
2217
|
+
*/
|
|
2218
|
+
unlock(body, options) {
|
|
2219
|
+
return client.fetch("/me/talent-access/unlocks", {
|
|
2220
|
+
...options,
|
|
2221
|
+
method: "POST",
|
|
2222
|
+
body
|
|
2223
|
+
});
|
|
2224
|
+
},
|
|
2225
|
+
/**
|
|
2226
|
+
* Swap the company's primary talent_access subscription to `planId`
|
|
2227
|
+
* in place (prorated). Never a second checkout — Checkout would mint
|
|
2228
|
+
* a parallel subscription. Requires an existing talent_access sub.
|
|
2229
|
+
* `companyId` is required with multiple approved memberships.
|
|
2230
|
+
*
|
|
2231
|
+
* @example
|
|
2232
|
+
* await board.me.talentAccess.upgrade({ planId });
|
|
2233
|
+
*/
|
|
2234
|
+
upgrade(body, options) {
|
|
2235
|
+
return client.fetch("/me/talent-access/upgrade", {
|
|
2236
|
+
...options,
|
|
2237
|
+
method: "POST",
|
|
2238
|
+
body
|
|
2239
|
+
});
|
|
2126
2240
|
}
|
|
2127
2241
|
},
|
|
2128
2242
|
/**
|