FAQs

Basic

Contentstack is a headless CMS with an API-first approach that puts content at the center. It is designed to simplify the process of publication by separating code from content. You can access, create, and manage content in Contentstack, via RESTful APIs, across multiple channels such as websites, mobile apps, or any other platform. Read more about Contentstack.

You will first need a Contentstack account to get started. Once you have an account, read our docs to understand how Contentstack works. Developers who are well aware of Contentstack and are interested in creating websites and apps can get started with our docs on various platforms. While new users, content managers, and editors can go through the basic concepts of creating a website or app in Contentstack, here.

Yes, you can go through the Platforms pages where you can find our step-by-step tutorial for creating a website or app in Contentstack for some of the common platforms, such as JavaScript, iOS, React Native, etc. The 'Example Apps' section in these pages will take you through all the steps involved in creating your first web page or mobile app. The tutorial explains how to perform the initial set up, how to create a stack, a content type, and your first page, how to set up a publishing environment, and finally, how to publish content on the environment.

Since Contentstack is a cloud-based CMS, you do not need anything (except for internet connection and a Contentstack account) to get started.

Contentstack provides 24x7 online support. You can contact the support team either by using the in-product chat functionality or by emailing us at support@contentstack.com.

Contentstack does not provide any formal trainings. However, it provides extensive documentation that covers a wide range of topics including important concepts, guides, tutorials, SDK and API references, code samples, and short videos that will help you learn and get started with Contentstack.

Contentstack is a cloud-based CMS. This means that you just need an internet connection on your desktop/laptop to get started with Contentstack.

Contentstack store all of its data in MongoDB Server.

No, you do not have to host your website with Contentstack. You are free to host your site with any hosting provider of your choice.

Organization

Organization is specifically designed for administrators to simplify the process of managing stacks and permissions of a group or company. Organization encapsulates all users, stacks and all the resources within stacks. It allows you to manage roles and permissions for the users and stacks of your account and enables smoother collaboration between the users.  Read more

Yes, you can. To do so, perform the steps given below:

  1. Click on the ‘ORGANIZATION’ tab on the header and click on the settings icon beside the organization name. This will open the ‘Organization Settings’ page.
  2. In the ‘Organization Info’ section, click on the ‘Transfer Ownership’ button on the right-hand side.
    Transfer Organization.png
  3. Enter the email ID of the user to whom you wish to transfer the Organization's ownership and click on 'Transfer'. This will send an email invitation to the user to accept the ownership of the organization. If the user does not receive the invitation, you can resend the invitation by clicking on ‘Resend’.

Once the invited user accepts the ownership invitation, the organization will cease to be under your ownership and you will be assigned the ‘Member’ role. 

Note: Only the owner of the organization can transfer the ownership of the organization.

To create a new organization, contact the Contentstack support team at support@contentstack.com.

To get the details of an organization, perform the following steps:

  1. Click on the ‘ORGANIZATION’ tab on the header.
  2. Click on the settings icon beside the organization name.

This will open the ‘Organization Settings’ page which consists of the details of the organization as shown in the following screenshot:

Organization Info page.png

Note: Only the Owner and the Admin users can view this info. 

You cannot delete an organization. To permanently disable your organization, contact the Contentstack support team at support@contentstack.com.

To get a list of all stacks in an organization, perform the steps given below:

  1. Click on the ‘ORGANIZATION’ tab on the header and click the settings icon. This will open the ‘Organization Settings’ page.
  2. Click on the ‘Stacks’ tab on the left-hand side of the page. This will open the ‘Stacks’ page that displays the list of all the stacks that belong to the organization.
    Manage stacks.png

Only the Owner and the Admin users of the organization has the right to invite users to the organization. To invite users to an organization, perform the steps given below:

  1. Click on the ‘ORGANIZATION’ tab on the header and click on the settings icon. This will open the ‘Organization Settings’ page.
  2. Click on the ‘Users’ tab on the left-hand side of the page. This will open the ‘Users’ page that displays the list of users who belong to that organization.
    Users.png
  3. Click on the ‘Invite User’ button on the top-right corner of the page.
  4. In the 'Invite User' form that opens, enter the following details:
    • Under the ‘Email’ section, enter the email ID(s) of the user(s) you wish to share the stack with.
    • In the ‘Organization Roles’ section, you also need to assign a role to the user. You can select either the ‘ADMIN’ or ‘MEMBER’ role.
    • In the ‘Stack-level permissions’ section, assign stack-specific roles to these users. 
    Invite User.png
  5. Click on ‘Invite’ to send the invitation to the user(s).

To get a list of all users in an organization, perform the steps given below:

  1. Click on the ‘ORGANIZATION’ tab on the header and click on the settings icon. This will open the ‘Organization Settings’ page.
  2. Click on the ‘Users’ tab on the left-hand side of the page. This will open the ‘Users’ page that displays the list of users who belong to that organization.
    Users.png

To remove a user from an organization, perform the steps given below:

  1. Click on the ‘ORGANIZATION’ tab on the header and click on the settings icon. This will open the ‘Organization Settings’ page.
  2. Click on the ‘Users’ tab on the left-hand side of the page. This will open the ‘Users’ page that displays the list of users who belong to that organization.
  3. Click on the user that you wish to remove and click on the ‘Remove’ button.
    Remove User.png

In Contentstack, roles can be assigned at two level: Organization-level roles and Stack-level roles.

While inviting a user to an organization, you can assign Member and Admin roles. These roles define what you can do in the organization. Read more about organization roles.  

When inviting a user to a stack, you can assign Developer, Content Manager or a custom role. These role define what a user can do within the stack. Read more about stack roles

Yes, there are limits to your usage in an organization. These limits depend on the plan that you have subscribed for.

To get the plan details and usage  of your organization, perform the following steps:

  1. Click on the ‘ORGANIZATION’ tab on the header and click on the settings icon. This will open the ‘Organization Settings’ page.
  2. Click on the ‘Plan & Usage’ tab. This will lead you the ‘Plan & Usage’ page that will display the current usage and maximum allowed limit of the current plan’s features, which include stacks, assets, entries, content types, and users, API calls, and bandwidth.

The details of the Plan & Usage page is displayed as shown in the following screenshot:

Plan & Usage page.png


To update a user role in an organization, perform the steps given below:

  1. Click on the ‘ORGANIZATION’ tab on the header and click on the settings icon. This will open the ‘Organization Settings’ page.
  2. Click on the ‘Users’ tab on the left-hand side of the page. This will open the ‘Users’ page that displays the list of users who belong to that organization.
    Users.png
  3. Click on the user whose role you wish to update. This will open the ‘User Details’ page.
  4. Reassign the respective organization roles for the user.
  5. Click on the ‘Update’ button to update the roles of the user(s).
    Update User Role.png

Note: You need to be the organization owner or be assigned the 'admin' role in order to update the roles of users in an organization.

To retrieve the organization ID of an organization, perform the steps given below:

  1. Click on the ‘ORGANIZATION’ tab on the header and click on the settings icon. This will open the ‘Organization Settings’ page.
  2. By default, the  ‘Organization Info’ section is opened which displays the name and ID of an Organization.
    Organization Info page.png

You cannot change the name of an organization. In order to do so, please contact our Support team.

Users who are assigned the ‘Admin’ role will be able to access and modify the organization information, invite users, view usage, etc. whereas users assigned the ‘Member’ role will not be able to access any Organization settings.

No, after a user has been removed from the organization, he/she will not able to access the stacks shared/created by them in the organization.

Stack

To get the API key and Access Token of your stack, perform the steps given below after logging into your Contentstack account:

  1. Open your stack.
  2. Hover on the 'SETTINGS’ tab and select ‘Stack’.
  3. On the right-hand side of the page, under 'API CREDENTIALS’, you will get the Access Token and API Key of your stack.

The API key of the stack remains constant and cannot be changed. However, the Access Token can be reset by performing the steps given below:

  1. Open your stack.
  2. Hover on the 'SETTINGS' tab and select 'Stack'.
  3. Under the 'API CREDENTIALS’ section you will find the 'Access Token' for your stack.
  4. Click on the 'Reset' button beside the 'Access Token' to reset it.

Yes. To do this, perform the steps given below:

  1. Open your stack.
  2. Hover on the 'SETTINGS' tab and select 'Users'.
  3. Click on the ‘+ Invite User’ button on the top-right corner of the page.
  4. In the 'Invite User' form that opens, enter the email ID(s) of the user(s) you wish to share the stack with. You also need to assign a role to the user while sharing the stack.

Once you click the ‘Invite’ link, an email containing the link to access the stack will be sent to the invited user. The user needs to click on this link in order to get access to the shared stack.

Yes, you can remove an existing user from a stack provided you are the owner of the stack or you have the required permission to do so. To remove a user, perform the steps given below after logging into your Contentstack account:

  1. Open your stack.
  2. Hover on the 'SETTINGS' tab and select 'Users'.
  3. Hover on the user that you wish to remove, click on the ellipsis (three vertical dots) that appears on the far right-hand side corner of each user entry, and click on 'Remove'.

Yes, you can. To do so, perform the steps given below:

  1. Open your stack.
  2. Hover on the 'SETTINGS' tab and select ‘Stack’.
  3. Click on the ‘Transfer Ownership’ button at the bottom of the page.
  4. Transfer ownership.png

  5. In the 'Transfer Stack Ownership' dialog box that opens up, enter the email ID of the user to whom you wish to transfer the stack's ownership. Click on 'Transfer'.

Once you do this, the stack will cease to be under your ownership.

Note: Only the owner can transfer the ownership of their stack to other Contentstack users.

A 'stack' is like a container that holds all the content related to an application or a project. Within a stack, you can create content types that could be either of ‘content block’ type or ‘web page’ type.

A stack and a content block content type are two very different elements, and serve different purposes. Learn more about Stacks and Content Types.

This is because you may not have the required permissions to create content types in your stack. The owner of the stack defines the roles and permissions of a user while sharing the stack with the user. Kindly contact the stack owner to enable this for your account. Read more about Roles.

To delete a stack, the following steps need to be performed:

  1. Open your stack.
  2. Hover on the 'SETTINGS' tab and select 'Stack'.
  3. Click on the ‘Delete Stack’ button at the bottom of the page to delete the stack.
  4. Delete stack.png

  5. A dialog box appears to confirm your action. Click on the 'Delete Stack' button.

Note: Only the owner of a stack has the right to delete the stack.

Content Types

To restore a previous version of a content type, you need to perform the steps given below:

  1. Fetch the previous version of the content type that you want to restore using the versioning API.
  2. Using the Import a content type API request, import the content type fetched in step 1.


Note: The above process would restore a previous version of the content type and save it as a new version.

You can find our demo app here. These apps contain ready-made templates of the various content types (JSON files) required for this app. You can import these JSON files into your stack to get started with the app.

Yes. When creating a content type, a user can add at the most 50 fields in a content type.

No, the ‘Title’ field (present in both 'Webpage' and 'Content Block' content types) and the ‘URL’ field (present only in the 'Webpage' content type) are default fields and they cannot be removed from the content type schema.

The 'Reference' field allows you to include the entries of other content types within a content type. Read more about Reference field.

Yes, you can add tool tips by using the ‘Help Text’ property of any field. While creating/editing a content type, click on any field to edit its properties. Then, in the ‘Help Text’ input field, enter the text that you wish to display as the tool tip. It also supports hyperlinks.

Though there are no limitation to adding elaborate content in tool tips, it is advisable to keep it short and precise.

When adding a new field while creating a content type, perform the steps given below to change the display name of the field:

  1. Click on the newly added field to open its 'PROPERTIES' window.
  2. Provide a suitable title under the 'Display Name' parameter.

When you create a content type, Contentstack, by default, assigns a UID to it. You can change this UID while creating the content type. However, once the content type is created, it is not possible to change its UID.

Contentstack does not allow its users to enter uppercase characters in unique IDs of fields. The unique ID of a field can only contain lowercase characters (a-z) and numbers (0-9).

You can only add the fields that are provided in the content type builder. You cannot create a custom field in Contentstack.

Assets

Contentstack supports all media files such as image link, video link, GIFs, etc. You can upload them as assets and use them in entries.

The maximum allowed size of a single asset file that can be uploaded is 700 MB. You can also set a limit on the maximum and minimum size of files that can be uploaded by a user, by using the File Size Limit validation rule.

No. There is no limitation to the number of assets that can be uploaded in a stack. The limit can be applied based on your subscription. 

While Contentstack does not support using 'Image Delivery API' requests for images that are directly inserted within text fields, there is another way to achieve this. Instead of directly inserting images into text fields, upload the images to assets first, and then use the URL in the text field. You can then use Image Delivery APIs for these images. Here are the detailed steps to do this:

  • Create Asset URL: Create a URL first for your asset, i.e., you need to upload your asset file using the ‘Upload asset’ call. In the response body, you will see the ‘url’ parameter which possesses the URL that has been generated for the asset file. Also, a unique ID (uid) is created for the uploaded asset file.
  • Provide URL in text fields: In your RTE field (or any other text field), switch to the RAW HTML form, and provide the asset URL as the source for your image instead of the actual image.

Now, using the uid and the specific URL, you can use the Image Delivery API requests on the images that are within the RTEs.

Entries

Contentstack does not provide a way to preview an entry before publishing. However, you can create a local environment, publish the entry there, and view the entry.

Every time you save an entry with changes, Contentstack creates a new version of the entry. Users can view all the versions and compare any two versions of an entry at a time. If you wish to switch back to a previous version, you can simply click on the 'Browse' link at the top-right corner of your entry's page and 'View' the version or 'Compare' an earlier version with the current version from the list.

version1.png

If you wish to make any previous version as the latest version of the entry, just select the required previous version and click on 'Save'.

The 'Publish Queue' section shows the list of all the items sent for publishing, along with its current publish status (published/pending/failed).

First, you need to check whether the ‘Deploy Content to Server’ option is enabled for the environment to which the entry is published. Then, the latest version of the contentstack-express server needs to be installed on your system. Until then, the status of entries shall be displayed as pending.

Yes. Currently, you can bulk publish multiple entries. Check out the CLI guide and Publish an Entry sections to know more.

To create entries in a stack, you need to be either the owner of the stack or you need to be assigned a role that contains write access to the stack. If you are not the owner of the stack, you need to acquire write access to your role from the owner of the stack.

When you publish an entry, the system automatically puts it in the queue for publishing. The ‘Publish Queue’ section shows the list of all the items sent for publishing, along with their current status. You cannot manually change the status of an entry in the Publish Queue.

Contentstack does not support the auto-save feature, and so, unsaved data will be lost if not saved manually by the user. To avoid such inconveniences, always make sure you save the data before navigating away from the page.

No. The published entries in this case will not be affected. It will only be affected if you republish the entries on ‘staging’ after making changes to the content type ABC. Note that making changes to a existing content type (having entries) may cause the entries to lose data in Contentstack, but not on the published environment.

Labels

No, labels are not private. The labels created in a particular stack are visible to all the users of the stack.

Security

Contentstack accounts are password protected. To make them more secure, we have introduced two-factor authentication which adds an extra layer of security. Read our blog to know more about two-factor authentication.

In case you forget your password, you can reset it again by performing the steps given below:

  1. Click on the 'Forgot Password' link on the login page.
  2. In the 'Password Retrieval' section, enter your email ID and click the ‘Send Request’ button. You will receive an email containing the password reset page link.
  3. In the ’Reset Password’ window, enter the new password and click on the ’Reset Password’ button.

Now you can log into your account using the new password.

To reset your Contentstack user account password, you need to perform the steps given below after signing in to your Contentstack account.

  1. On the top-right corner of your home page, you will see the more options icon beside your profile name. Click on this and select 'Security'. You will be directed to the 'Account Settings' page.
  2. change password.png

  3. Here, you can change your password.
  4. Finally, click on 'Update' to save your changes.

Thus your password will be updated to the new value that you have entered.

In case you forget your password, please contact our Support team.

To change the registered phone number associated with your Contentstack account, you need to perform the steps given below after logging into your Contentstack account using your existing phone number:

  1. On the top-right corner of your home page, you will see the more options icon beside your profile name. Click on this and select 'Security'.
  2. Under the 'Two-factor Authentication' section, click on the 'Reset your phone number' option.
  3. reset phone.png

  4. Now, enter the new phone number and click on 'Reset'.
  5. Select a method to verify your phone number either using the Authy app or via text message, and perform the verification process as performed while enabling two-factor authentication.

If you do not have access to the phone number that was used for 2FA registration, you will need to contact our support team at support@contentstack.com for further assistance.

For any enterprise, data is of utmost importance and it's crucial to protect it. So, it's very important to have a proper disaster recovery plan in place to cover all contingencies. To do so, it's imperative that we set in place a system that will considerably reduce the damages caused by a fire, theft, flooding, etc, by backing up our data at appropriate locations.

Apart from natural disasters, backing up files can protect your content against accidental loss of user data, database corruption, and hardware failures. It’s our job as service providers to make sure that backups are performed and in a secure location.

We have taken this into account and have come up with the required measures to create the right plan for you.

Let’s see them in detail.

  • Region and Availability Zones
  • We leverage AWS to deploy Contentstack in multiple availability zones so that if one of the instance in an availability zone fails,  the requests will be routed to one of the healthy instances. If an availability zone fails altogether, the requests will be routed to the working availability zones. Contentstack won't face any downtime.

  • Highly Available Architecture
  • Contentstack has a network architecture that is designed for maximum reliability and uptime, and offers a 99.5% Service Level Agreement (SLA) for its services, just as promised. The infrastructure consisting of highly-available, redundant number of data centers ensures minimum service interruption due to natural disasters, hardware failures, or other incidents.

  • CDN and Caching
  • Our highly efficient CDN ensures faster delivery of content irrespective of the destination with the help of nodes that are spread all around the world. Also, it allows caching – keeping copies of content that were requested earlier thus making it available for future requests.

  • Data is constantly backed up
  • We use a Cloud-based backup solution to backup our database. For every requests made, your data is constantly backed up.

Environments

There are no restrictions on creating environments in a stack. A Contentstack user can create unlimited environments.

The base URL is the consistent part of the destination’s web address. It helps Contentstack to identify the destination to which the content will be published. The base URL is different for different languages.

The ‘Deploy Content to Server(s)’ option should be enabled if you are using Contentstack’s web framework for your websites. When enabled, the content that you publish via Contentstack is saved in the local file system of the web server. Subsequently, whenever there is an incoming page request on the website, the content is retrieved and rendered directly from the local storage, instead of fetching it from Contentstack database via APIs. Read more about it here.

API

Yes, the 'Publish Later' option is supported in REST API calls as well. When passing the publish entry details in the body parameter of the POST call, you need to provide the 'scheduled_at' key with the publishing date/time in the ISO format as its value. The body parameter should look like this:

{
    "entry": {
        "locales": [
           ...
        ],
        "environments": [
            ...
        ]
    },
    "locale": "en-us",
    "version": 1,
    "scheduled_at": "2016-10-07T12:34:36.000Z"
}

Yes, Contentstack gives you the provision to automate release postings via ‘POST’ calls. You can schedule the entry to be published at a later date/time by adding the 'scheduled_at' key in the Body parameter. When passing the publish entry details in the Body parameter of the POST call, you need to provide the publishing date/time in the ISO format as the value of the 'scheduled_at' key. The Body parameter should look like this:

{
    "entry": {
        "locales": [
           ...
        ],
        "environments": [
            ...
        ]
    },
    "locale": "en-us",
    "version": 1,
    "scheduled_at": "2016-10-07T12:34:36.000Z"
}

Yes, we have open APIs for Content Delivery and Content Management.

Content Delivery API helps you to retrieve data and Content Management API allows you to create, access, and manage data.

Yes, Contentstack uses Fastly—a leading content delivery network (CDN) provider—to provide lightening-fast content delivery to users anywhere in the world.

Yes, this is possible. You need to execute the 'only[BASE][]' query and provide the unique IDs of only those fields that you wish to retrieve, as its parameters. For more details, refer to the Only Operator section in our Content Delivery API.

Users and Roles

Yes, you can add users to add and edit content for your website. For that, you need to share the relevant stack with other users. Learn how to add users to your stack.

If you do not see the ‘Users’ option under ‘SETTINGS’, you do not have the permission to add new users to your stack. Please contact the stack owner to get the users added or to get adequate permissions to add users.

There is no limit on the number of users that can be added to a stack.

Yes, you can control access to content for users and groups by assigning them specific roles. Read more about Roles.

Localization

No. Contentstack does not give its users the provision to manually enter content from right to left. However, users can paste Arabic and Hebrew content copied from any source file into the text fields within Contentstack. Learn how localization works.

No, Contentstack does not provide any translation service.

The default language of a stack is known as the master language of a stack. Once it is set while creating a stack, it cannot be changed. Read more about master language.

Validations

Yes. You can add custom validations to ‘Single Line textbox’ and ‘Multiline textbox’ fields.

Add these fields to your content type, and click on these fields to edit its properties. In the ‘Validations (regex)’ property, you can add custom validations using regex. Read more about validations, here.

The ‘Validation’ field property is available for single-line and multi-line textbox fields. You can find common examples of validations in our documentation. Since validations can be added using regex, learning how regex works might be helpful.

No, for a single field you can only define one validation rule.

Validations can be added to single-line and multi-line textbox fields using regex (regular expressions). When creating a content type, perform the steps given below to add regex validation to a field in order to check for email addresses:

  1. Edit the required content type. Click on the single/multi-line textbox field that is being used in your content type as email field. This will open the properties of the field.
  2. Now, enter the following regex value in the 'Validations (Regex)' property. This will validate email addresses:
    [a-z0-9!#$%&'*+=?^_`{|}~-]+(?:\.[a-z0-9!#$%&'*+=?^_`{|}~-]+)*@(?:[a-z0-9](?:[a-z0-9-]*[a-z0-9])?\.)+[a-z0-9](?:[a-z0-9-]*[a-z0-9])?

Yes, you can set validations on the ‘File’ field to restrict users from uploading certain file types. To do this, click the ‘File’ field to open its properties. Then, use the ‘Allowed file type(s)’ property for allowing only specific file types to be uploaded. Learn more.

Webhooks

In cases where third party services are down during a webhook POST call, you won't receive any notifications. But, users have the provision to retry the webhook operation.

Miscellaneous

Contentstack does not provide analytics for the pages of your website. However, you can use any external tool to get the analytics.

You can add custom filters for retrieving content via API calls. When executing the GET calls to retrieve content, you can pass certain queries as parameters. These queries act as filters and fetch all the content that satisfy the specified query expression.

To know more about the queries that can be used to filter out content, refer the Queries section of our API docs.

Contentstack uses CDN which helps to deliver content and implements caching, wherein the CDN maintains cached copies of the resource that have been accessed via API calls and make them available to users for future requests.

Contentstack uses two frameworks for websites – Contentstack Express and Contentstack SDK.

Yes, the Authtoken is unique per user. The authtoken is very important as it is required to perform the write API calls. 

To retrieve the API Key of your stack, perform the steps given below after logging into your Contentstack account:

  1. Open your stack.
  2. Hover on the 'SETTINGS’ tab and select ‘Stack’.
  3. At the right-hand side of the page, you will find the 'API CREDENTIALS’ section under which you will get the 'API Key' for your stack.

To retrieve the Authtoken, you need to log in to your Contentstack account via the login call of 'User Session'. Here is the link: https://contentstackdocs.built.io/rest/api/content-management-api/#/User_Session

You will get the auth token in the response body of the call.

For web browser, we provide JavaScript and Node.js SDKs, and for mobile we provide iOSAndroid, and React Native SDKs.

Markdown is a markup language with plain text formatting syntax. It does not support inline styling (CSS). However, you can input HTML in Markdown. Here's the official Markdown documentation on inline HTML.

You can import content types as well as entries into your stacks in Contentstack. Our documentation provides in-depth guides and video tutorials on how to import content types and entries.

If you are using Contentstack’s web framework, routing is handled by the router that available in the app.js file or the custom plugin of your framework. Learn more about how routing works with Contentstack.

A unique identifier (UID) is an alphanumeric string that is associated with an entity (content type, entry, asset, or field) in Contentstack. UIDs make it possible to address/identify that entity so that it can be accessed and interacted with.

Yes. many external applications can be integrated with Contentstack. Check out the external integrations page to learn more.

Yes. Through plugins and hooks, you can add custom logic to extend the functionality of Contentstack. Learn how this works.

Image Delivery API

Image Delivery APIs are image manipulation and optimization API calls. The API calls will help you to retrieve, manipulate, and/or convert image files of your Contentstack account and deliver it to your web or mobile applications.

You can resize an image by specifying the ‘width’ and ‘height’ of the image.

  • width: The ‘width’ parameter lets you dynamically resize the width of the output image by specifying pixels (as any positive integer between 1 and 8192) or percentage values (as a percentage value between 0.0 and 0.99). In case of percentages values above 99, append a ‘p’ parameter to the value).
  • height: The ‘height’ parameter lets you dynamically resize the height of the output image by specifying pixels (as any positive integer between 1 and 8192) or percentage values (as a percentage value between 0.0 and 0.99). In case of percentages values above 99, append a ‘p’ parameter to the value).

To see these parameters in action, refer our documentation.

You can use a combination of the 'crop' and 'overlay' parameters to achieve this activity. First, crop the desired section from the source image and then attach it to the final image.

To crop a specific section of an image, you can use the ‘crop’ parameter and pass the desired width and height of the section that you want to remove. The query to be used is ?crop={width_value},{height_value}. For e.g., if you wish to crop an image where you want a width of 300px and a height of 400px from the center, you can specify the values in the above query as ‘?crop=300,400’. To trim only a particular side of an image, use the trim parameter.

Later, use the 'overlay' parameter to attach the cropped image on top of another. To know more about how to do this and how the ‘overlay’ parameter works, refer to our documentation.

You can use the 'format' parameter to convert a given image from one format to another.

Refer to our documentation for more details.

This can be achieved using the ‘overlay’ parameter. Refer to the documentation for more details.

The supported formats to which you can convert your source image are .gif, .png, .jpg (for JPEG), .pjpg (for Progressive JPEG), .webp, .webpll (Loseless), and .webply (Lossy).

Image optimization improves the loading speed of a website by reducing the size of uploaded images without compromising on the quality aspect. Optimization ensures a better user experience and swiftly delivers elements of a website to the browser . The reason for faster load speed is essential for a website because it factors into the SEO ranking. Also, the traffic is highly improved when the file sizes are reduced. You can optimize an image by using the ‘auto’ parameter or reducing the quality of an image.

This can be partially achieved by using an overlay image. Read more about the overlay parameter.

To compress the size of an image you can use the 'quality' parameter. This parameter lets you control the level of compression to an image. You can specify the value for this parameter in whole number, i.e., between 1 and 100. To add a quality parameter for an image you will need to specify '?quality={quality_value}' after the URL of an image.

You can use the 'trim' parameter to trim an image from the sides/edges. This parameter comes in handy especially when you need to remove borders or white spaces around images. The value for this parameter can be given in pixels or percentage.

To trim an image using the ‘trim’ parameter, you need to specify the value for right and left in pixels or percentage ‘?trim={right_value},{left_value}'.

To control the image after using the width parameter, you can disable the upscale of the image by specifying the disable parameter ‘<span class="code">width={value}&disable=upscale</span>’.

Yes, you can crop an image using the 'crop' parameter to a specific pixel or percentage. Using this parameter, you can remove pixels from an image by specifying the height and width in pixels or percentage value, or defining height and width in aspect ratio.

Yes, the 'orient' parameter gives you the ability to orient the image. By using this parameter, you will be able to move an image right, left, horizontally, vertically, or flip. To specify the values for the orient parameter, refer this documentation.

The ‘quality’ parameter supports only the lossy file format and thus is not applicable for image formats such as PNG and GIF because they lossless file formats. Refer our documentation for more details.

If the border is added as background of the image, you can change the color using the 'bg-color' parameter.

There is no specific format for uploading images. For performing image transformation activities, you can upload images in any convenient format or resolution. If you wish to convert the format of any image, you can use the ‘format’ parameter.

Image Delivery API calls can transform your images on demand. It can dynamically resize, convert, adjust quality, crop/trim, change orientations, and image background colors.

They operate via a query string URL of the API call. When a user makes a request for an image, the Image Delivery API does two things:

  1. Serves the desired image request from cache (cache hit).
  2. Transforms the source image based on the parameters in the URL of the API call.

Yes. Images can be presented in ultra high definition formats allowing you to serve pixel perfect images on everything from mobile devices to 4K monitor displays.

The browsers supporting WebP image format are Google Chrome, Opera, and Android browsers.

In such cases, you can use the progressive JPEG format which is supported by most of the modern browsers.

The ‘quality’ parameter supports all images of the Lossy file type. The formats included in the Lossy file type are JPEG, Progressive JPEG, and WEBP(Lossy).

To display an image within a circle, use the overlay parameter. The overlay image should have a circle of transparent pixels within it. When you place this image over the actual image, the actual image will be displayed within a circle. Now, if the color of the solid background of this overlay is the same as the color of the background where the image will be placed in your app, it will give a circular cropped image effect.

Support

For any help related to Contentstack, please contact us either by using the in-product chat box or by emailing the Support team.

If you find any bug in our product or have any suggestions, please contact our support team via the in-product chat box or email us at support@contentstack.com.

We use cloud-based backup solutions for backing up our database. 

Our databases are stored in multiple regions. As a result, in case if one region is affected by any disaster, the data stored in other regions serve as backups.  

If you wish to create content backups at your end, you can use our Webhooks. Webhooks trigger whenever event happens (such as entry created, content type deleted). The data is then sent to an external URL that you specify in webhooks. 

top-arrow