The Smartsheet JavaScript SDK, currently at version 4.7.2, provides an official client library for interacting with the Smartsheet API from Node.js applications. It ships with comprehensive TypeScript types, facilitating development in type-safe environments. The SDK maintains an active and consistent release cadence, frequently introducing minor versions with new features, API endpoint support, and critical bug fixes, as evidenced by recent updates adding new sharing, workspace, and folder endpoints, alongside improvements to retry mechanisms and pagination. It differentiates itself as the directly supported client, offering extensive coverage of the Smartsheet API's functionalities. Developers can initialize the client using an access token obtained from the Smartsheet UI and leverage promise-based methods for operations such as listing and loading sheets, managing users, and handling attachments. The SDK requires actively supported Node.js versions 14.x or later for optimal compatibility and robust operation.
npm install smartsheetVerified import paths — ran on the pinned version, not inferred.
This quickstart demonstrates how to initialize the Smartsheet client, list all available sheets, and then load the details of the first sheet found using asynchronous `await` syntax.
Migrate your code to use the newly introduced sharing endpoints. Refer to the Smartsheet API documentation for the updated methods.
Replace calls to `getWorkspace()` with `smartsheet.workspaces.getWorkspaceMetadata(id)` and `smartsheet.workspaces.getWorkspaceChildren(id)`. Apply similar changes for folder methods.
Upgrade to version 4.2.3 or later to ensure correct retry behavior for all HTTP methods.
Ensure your Node.js environment is actively supported (v14.x or later). Update Node.js to a compatible version.
Provide a valid Smartsheet API access token, ideally through an environment variable like `SMARTSHEET_ACCESS_TOKEN`, or directly in the `createClient` call (not recommended for production).
Update your code to use the new methods introduced in v4.4.0: `getWorkspaceMetadata()` and `getWorkspaceChildren()` for workspaces, and `getFolderMetadata()` and `getFolderChildren()` for folders.
Ensure `npm install smartsheet` has been run. For ESM, use `import { createClient } from 'smartsheet';`. For CommonJS, use `const { createClient } = require('smartsheet');`. Check your `package.json` `type` field if encountering issues in mixed environments.No dependency data recorded yet.