DatoCMS JS Client is a deprecated NodeJS/Browser API client and CLI tool for the DatoCMS Content Management API, now superseded by the official REST JS clients.
What is DatoCMS JS Client?
DatoCMS JS Client is a JavaScript package that provides programmatic access to the DatoCMS Content Management API, running in both Node.js and browser environments. It is maintained by DatoCMS and was the primary client for automating content management tasks before being replaced. The repository is marked with a deprecation warning that directs users to the new REST JS client available at github.com/datocms/js-rest-api-clients, with documentation at datocms.com/docs/content-management-api/using-the-nodejs-clients.
Key Features
- NodeJS/Browser support — The client targets both Node.js and browser runtimes, making it usable from server-side scripts and client-side applications.
- CLI tool — Bundles a command-line interface for interacting with the DatoCMS Content Management API without writing custom code.
- Content Management API integration — Exposes operations for managing DatoCMS content through the platform's Content Management API.
- Recorded HTTP test suite — The test suite records HTTP interactions to the ./cassettes directory and replays them for deterministic tests; deleting those files re-records new requests and responses.
- MIT License — Released as open source under the MIT License, allowing modification and redistribution.
- Community contribution model — Accepts bug reports and pull requests on GitHub, with contributors expected to follow the Contributor Covenant code of conduct.
Who is it for?
DatoCMS JS Client is aimed at developers who build tooling around DatoCMS and need direct API access. Node.js developers can write automation scripts that manipulate content models or records. Frontend developers can embed CMS editing capabilities in browser applications. DatoCMS users maintaining existing projects may use this client to understand the legacy codebase before migrating to the official replacement.
What can you do with it?
- Content automation: Write Node.js scripts that interact with the DatoCMS Content Management API to automate content updates.
- Custom admin interfaces: Build browser-based tools that use the client to manage content directly from a custom interface.
- Terminal operations: Use the bundled CLI for quick interactions with the DatoCMS API from the command line.
How does the development workflow work?
After cloning the repository, run npm install to install dependencies and npm run test to run the tests. The test suite's HTTP interactions are recorded and replayed from the ./cassettes directory for fast, deterministic, and accurate tests; removing those files triggers a fresh recording of HTTP requests and responses.
Pros and cons
- Pros: Open source under MIT; cross-environment support; includes a CLI; deterministic test suite.
- Cons: Deprecated; no longer recommended for new work; users must migrate to the new REST JS client for continued maintenance.
FAQ
Is DatoCMS JS Client deprecated?
Yes. The repository header explicitly states that the package is deprecated and directs users to the new REST JS client.
What should I use instead of DatoCMS JS Client?
DatoCMS released a new REST JS client at github.com/datocms/js-rest-api-clients. Its documentation is available at datocms.com/docs/content-management-api/using-the-nodejs-clients.
Is DatoCMS JS Client free to use?
The package is open source under the MIT License, so it is free to use and modify. The underlying DatoCMS service is a separate commercial product.
How do I report bugs or contribute?
Bug reports and pull requests are welcome on the GitHub repository. The project follows the Contributor Covenant code of conduct.








