The Content Management API is used to manage the content of your Contentstack account
The @contentstack/management package is a powerful node module designed for developers who want to streamline their content management processes using Contentstack, a leading headless CMS platform. This SDK provides programmatic access to the Content Management API, allowing users to automate tasks such as creating, updating, deleting, and fetching content types, entries, assets, and more. By integrating this package into their development workflow, developers can significantly reduce the manual effort required in content operations, enhance productivity, and maintain consistency across various platforms. The package supports both server-side and client-side JavaScript, making it versatile for a wide range of projects.
To get started with this node module, developers can simply run the command `npm install @contentstack/management` in their terminal. This command installs the package and makes all its features readily available for use within your project. Once installed, developers can leverage the full suite of Contentstack's content management functionalities programmatically. This includes managing environments, locales, and user roles, which are critical for maintaining a structured and organized content delivery framework. The npm package thus serves as a crucial tool for developers looking to enhance their content management strategies with robust automation and API-driven interactions.
The npm package @contentstack/management not only simplifies content management tasks but also empowers developers to build more dynamic, scalable, and personalized applications. By automating content workflows, developers can focus more on creating high-quality content and less on the intricacies of content management. Additionally, the SDK's support for multiple programming environments ensures that it can be integrated into a broad range of applications, from small projects to large-scale enterprise systems. This flexibility and power make the @contentstack/management package an essential tool for developers aiming to optimize their content infrastructure and deliver exceptional digital experiences.
Contentstack provides the Live Preview SDK to establish a communication channel between the various...
Read moreThe Content Management API is used to manage the content of your Contentstack...
Read moreThis Package converts Html Document to Json and vice-versa...
Read moreGatsby source plugin for building websites using Contentstack as a data...
Read moreThe Extensions SDK allows you to extend Contentstack’s UI by helping you create Custom Fields,...
Read moreGatsby source plugin for building websites using Contentstack as a data...
Read moreThe Contentstack App SDK allows you to customize your Contentstack applications...
Read moreCore dependencies of this npm package and its dev dependencies.
@slack/bolt, axios, form-data, lodash, qs, @babel/cli, @babel/core, @babel/plugin-transform-runtime, @babel/preset-env, @babel/register, @babel/runtime, @types/chai, @types/jest, @types/lodash, @types/mocha, axios-mock-adapter, babel-loader, babel-plugin-add-module-exports, babel-plugin-rewire, babel-plugin-transform-es2015-modules-commonjs, babel-polyfill, chai, clean-webpack-plugin, docdash, dotenv, eslint, eslint-config-standard, eslint-plugin-import, eslint-plugin-node, eslint-plugin-promise, eslint-plugin-standard, jest, jsdoc, mocha, mocha-html-reporter, mochawesome, multiparty, nock, nyc, os-browserify, rimraf, sinon, string-replace-loader, ts-jest, typescript, webpack, webpack-cli, webpack-merge
A README file for the @contentstack/management code repository. View Code
Contentstack is a headless CMS with an API-first approach. It is a CMS that developers can use to build powerful cross-platform applications in their favorite languages. All you have to do is build your application frontend, and Contentstack will take care of the rest. Read More.
This SDK uses the Content Management API (CMA). The CMA is used to manage the content of your Contentstack account. This includes creating, updating, deleting, and fetching content of your account. To use the CMA, you will need to authenticate your users with a Management Token or an Authtoken. Read more about it in Authentication.
Note: By using CMA, you can execute GET requests for fetching content. However, we strongly recommend that you always use the Content Delivery API to deliver content to your web or mobile properties.
You need Node.js version 10 or above installed on your machine to use the Contentstack JavaScript CMA SDK.
Install it via npm:
npm i @contentstack/management
To import the SDK, use the following command:
import contentstack from ‘@contentstack/management’
contentstackClient = contentstack.client()
To use this SDK, you need to authenticate your users by using the Authtoken, credentials, or Management Token (stack-level token).
An Authtoken is a read-write token used to make authorized CMA requests, and it is a user-specific token.
contentstackClient = contentstack.client({ authtoken: 'AUTHTOKEN' })
To Login to Contentstack by using credentials, you can use the following lines of code:
contentstackClient.login({ email: 'EMAIL', password: 'PASSWORD'})
.then((response) => {
console.log(response.notice)
console.log(response.user)
})
Management Tokens are stack-level tokens, with no users attached to them.
contentstackClient.stack({ api_key: 'API_KEY', management_token: 'MANAGEMENT_TOKEN' }).contentType('CONTENT_TYPE_UID')
.fetch()
.then((contenttype) => {
console.log(contenttype)
})
To use the JavaScript CMA SDK, you need to first initialize it. To do this, use the following code:
import contentstack from ‘@contentstack/management’
var contentstackClient = contentstack.client({ authtoken: 'AUTHTOKEN' })
Use the following lines of code to fetch your stack detail using this SDK:
contentstackClient.stack({ api_key: 'API_KEY' })
.fetch()
.then((stack) => {
console.log(stack)
})
To create an entry in a specific content type of a stack, use the following lines of code:
var entry = {
title: 'Sample Entry',
url: '/sampleEntry'
}
contentstackClient.stack({ api_key: 'API_KEY' }).contentType('CONTENT_TYPE_UID').entry().create({ entry })
.then((entry) => {
console.log(entry)
})
The following lines of code can be used to upload assets to your stack:
var asset = {
upload: 'path/to/file',
title: 'Asset Title'
}
contentstackClient.stack({ api_key: 'API_KEY' }).asset().create({ asset })
.then((asset) => {
console.log(asset)
})
Copyright © 2012-2024 Contentstack. All Rights Reserved
Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.