crisp-api is the official Node.js wrapper for the Crisp API, maintained directly by Crisp. It provides a comprehensive interface to interact with the Crisp platform's REST and WebSocket APIs, enabling developers to authenticate, manage conversations, send messages, access agent accounts, and build custom bots. The current stable version is 10.9.3, requiring Node.js 16.0.0 or higher. As an official library, it typically aligns closely with the latest API revisions (last updated 29/01/2026), offering stability and reliability for integrations. It differentiates itself by providing full API resource implementation, type definitions for TypeScript, and dedicated maintainer support from Crisp, ensuring it remains up-to-date with Crisp's evolving services.
npm install crisp-apiVerified import paths — ran on the pinned version, not inferred.
This quickstart demonstrates authenticating to the Crisp API with plugin credentials and fetching a list of conversations for a specified website ID.
Upgrade your Node.js environment to version 16.0.0 or a later compatible version.
Ensure you are using the correct token tier for the API operations you intend to perform. Refer to the Crisp API documentation for specific method permissions per tier.
Store your API credentials in environment variables or a secure secrets management system. Never hardcode them directly in your source code or commit them to version control.
Always call `CrispClient.authenticateTier()` and wait for its completion (e.g., using `await` or `.then()`) before setting up any `CrispClient.on()` event listeners.
For CommonJS, use `const { Crisp } = require('crisp-api');`. For ESM, use `import { Crisp } from 'crisp-api';`.Verify that your `identifier` and `key` are correct and that the `authenticateTier` ('plugin', 'user', 'website') matches the permissions required for the API call. Consult the Crisp API documentation for specific method permissions.Ensure `CrispClient = new Crisp()` is called correctly, and critically, `CrispClient.authenticateTier()` completes successfully before any `CrispClient.on()` calls.
No dependency data recorded yet.