Drupal CMS

API dashboard and front-end administration

The Headless dashboard is the interface where you manage the connectivity of third-party applications with your CMS.

The following table provides an overview of the dashboard and its key features:

Dashboard component

Description

API URL

The API URL is the access to your API endpoints. By default, there is a single API endpoint listed: json:api, which is an open specification with client SDKs for many different technologies. For more information on json:api with client SDKs, see client SDKs on the json:api website.

When configuring connectivity with a third-party application, you must know what this URL is. You can also customize the base URL by clicking the Update Base API URL button. For example, you can change the path from /jsonapi to /api.

API Documentation

As the data model in your CMS changes, API endpoints also change. Acquia CMS Headless uses the Open API standard to dynamically document the json:api. ReDoc and Swagger UI are the two visualization options for reading the API docs.

By default, there is restricted access to the documentation. You can modify which roles and CMS users have access to the documentation. If your site is publicly accessible, you might require CMS authentication to access the API documentation. However, if the CMS user interface is not publicly accessible, you can allow the documentation to be accessed without Drupal authentication. This assumes that you are providing authorization through a system design such as network controls.

API Keys

The API keys panel shows the registered OAuth consumers by label and Client ID. Client ID and Secret are used in the OAuth authentication process to obtain an OAuth token. The consumer secrets are stored as encrypted values in CMS and cannot be retrieved. If the key is forgotten, you must generate a new key from the dropdown edit button.

Consumers can be modified to change their label, user, and roles (scopes).

API Users

This displays the users in the system who use the “headless” role. This role is designed to be used with Next.js sites. The user with this role can view unpublished content to provide preview capabilities within the Next.js site.

Next.js sites

The Acquia CMS Headless starter kit comes with out-of-the-box integration for Next.js applications using the next-acms starter kit or the next-drupal library in Next.js. The sites listed here are the sites registered with the CMS. This is useful to discover the Node.js environment variables needed in your Next.js application and to determine which sites show a preview for given content types.

Acquia CMS Headless ships with a Next.js starter kit that can quickly initialize a setup for a local Next.js application.

Next.js entity types

Next.js entity types map which content types can be previewed through a Next.js application. This is primarily used for configuring site preview from the CMS.

Important

Site preview is currently an experimental feature and is only available in the Hybrid mode. It is not available when operating in the Headless mode.