SDK reference

Reference for the client constructor, top-level methods, every namespace, helpers, errors, CLI, and versioning.

The reference is organized by client namespace, following the same shape you use in code. Every currently shipped method is indexed on its namespace page.

How to read a signature

SDK methods follow a small number of conventions:

ts
board.namespace.method(identifier?, inputOrQuery?, fetchOptions?)
  • Identifiers such as a slug or ID come first.
  • A typed query or request body follows when the endpoint accepts one. Some methods keep an explicit empty query slot before fetch options so the signature can grow without breaking callers.
  • The final FetchOptions argument passes headers, abort signals, cache controls, and runtime-specific fetch options to the request.
  • List and search methods return an envelope with data, hasMore, and nextCursor.
  • Methods backed by HTTP 204 resolve undefined.
  • A non-2xx response throws BoardApiError with a stable code and optional request ID.

Shared behavior

  • The client returns the API wire body without reshaping it.
  • Ordinary request bodies are JSON; multipart helpers create their own FormData.
  • Query arrays become repeated URL keys, while null and undefined are omitted.
  • The SDK performs no automatic retry and no automatic token refresh.
  • Public reads can use shared caches. Anything under board.me requires a board-user session and must stay out of public caches.
  • Optional capabilities must be gated from board.context(), but server authorization remains authoritative.

Each namespace page states the method signature, authentication boundary, feature gate, returned type, method-specific outcomes, and errors. The client reference defines the pipeline shared by every method.

Use the types exported by your installed package as the exact contract. The Board API can add error codes and response fields within v1, so ignore unknown response fields and retain an unknown error fallback. Checked TypeScript examples in this documentation are tested against live exports and method chains.

Start here

  1. Create a client.
  2. Understand top-level methods.
  3. Open the namespace that owns the resource or workflow.
  4. Use Error codes for recovery behavior.
  5. Use Helper packages for display, routing, SEO, sitemap, theme, and server-session derivations.

Verify the client contract

Use one top-level method and one namespace method to confirm both the runtime response and installed TypeScript contract:

ts
import type { PublicBoard, PublicJobCard } from '@cavuno/board';
const context: PublicBoard = await board.context();
const page = await board.jobs.list({ limit: 1 });
const firstJob: PublicJobCard | undefined = page.data[0];
console.log({
object: context.object,
board: context.name,
firstJob: firstJob?.title ?? null,
});

Your project typecheck should accept the assignments. At runtime, object should be public_board and board should match the board selected by the client. firstJob: null is valid for an empty board.

Next step

Choose the namespace for the first route you are shipping, copy its exact signature into the route’s data function, and add one handled failure using the guard named by that namespace page. For an end-to-end implementation sequence, use the matching Build your job board guide or Cookbook recipe and return here when selecting parameters or return fields.

createBoardClient

Configure storage, headers, hooks, logging, and the exact Board API request pipeline.

Top-level methods

Reference for board context, SEO infrastructure, the raw client, and shared response conventions.

Jobs namespace

Reference for job discovery, details, similar jobs, applications, and resume uploads.

Embed namespace

Reference for the embeddable jobs response.

Companies namespace

Reference for company directories, search, profiles, jobs, markets, and salary data.

Blog namespace

Reference for blog posts, tags, authors, adjacent posts, related posts, and search.

Legal namespace

Reference for retrieving board legal content.

Auth namespace

Reference for registration, login, token rotation, verification, password reset, magic links, and OAuth.

Me namespace

Reference for the signed-in user, candidate profile, employer tools, alerts, applications, messaging, and access.

Password namespace

Reference for password-protected board access grants.

Taxonomy namespace

Reference for category, skill, and place resolution.

Redirects namespace

Reference for resolving board-managed redirects.

Job alerts namespace

Reference for anonymous double-opt-in job-alert subscriptions and preference management.

Job posting namespace

Reference for public plans, job submission, logos, billing verification, and entitlements.

Salaries namespace

Reference for salary data by title, skill, and location.

Talent namespace

Reference for entitlement-gated talent directory browsing.

Plans namespace

Reference for public board plan information and sales-led plan details.

Paywall namespace

Reference for public candidate-access offers.

Helper packages

Complete export inventory for formatting, filters, theme, SEO, sitemap, paths, server, and skill subpaths.

Error codes

Complete BoardApiError catalog with guards, recovery decisions, retries, and observability.

CLI commands

Exact setup and doctor commands, flags, environment inputs, effects, checks, and exit behavior.

SDK versioning

Distinguish package and API versions, verify upgrades, refresh skills, and check runtime compatibility.