APIs Alone Don’t Make a Headless CMS
API-first, API-this, and API-that.
CMS vendors everywhere are claiming that, because their system now has APIs, they’re now ready to serve as headless content management systems.
But APIs aren’t a one-size-fits all solution for multi-channel and omni-channel content delivery.
What is an API, and How Do They Work Within a Headless CMS?
API stands for Application Programming Interface, which is to say, a means for one application to programmatically make requests or invoke actions on another application. In this way, an API is like a user interface for computer programs rather than humans. Applications that make data and functionality available as API(s) are more scalable, reusable, and thus much more valuable because they are more flexible and can be leveraged by many other applications for any number of use cases.
Our VP of Products was recently quoted in a CMSWire article about how a headless CMS is the “perfect example of how APIs act as a force-multiplier for innovation.”
Any good headless CMS will serve content without presentation via an API. This architecture is sometimes called "Content as a Service" or "Content as an API." Because the content is served as an API, it's much easier to support multi-channel content, and a variety of multi-channel digital experiences. All the content is written once, stored in a single CMS and can be consumed by any channel (or digital experience app), written in any language and presented however is most appropriate for that channel. That's power.
Today, any CMS that doesn't have a headless capability at this point is completely obsolete. That said, by their nature, APIs in general, introduce additional development work and new concerns that must be addressed, such as security, performance, monitoring, and rate-limiting.
The Rise of GraphQL
Because API-enablement is so beneficial, there is a constant effort in the development community to make API-enablement faster and easier. OAUTH and GraphQL are examples of open technologies that do just that. OAUTH provides a standardized security interface for application and API authorization.
Recommended: Is GraphQL the Next API Standard for CMS?
GraphQL provides a simple, standardized means to API-enable data access from any kind of data, content included and across any number of backend systems as web-based/RESTful APIs that are efficient for their consuming applications.
GraphQL has become extremely popular in development circles of all kinds, and we at CrafterCMS believe it's a very exciting technology with respect to content management. There have been many attempts at creating a standard API for CMS; for example, iECM, JCR and CMIS are just a few standard APIs for content management. These standards have always had difficulty gaining traction across the entire industry. GraphQL is a general technology that already has wide and growing adoption across all types of development frameworks with bindings for many programming languages. While it does not address all of the concerns that the CMS standards do, for many use cases, it's a much more effective API to interact with a CMS repository, because it's lightweight and widely understood.
Any CMS vendor that's not looking at GraphQL as an interface to their CMS isn't paying attention to the development community in general or the immense opportunity that GraphQL brings to CMS in terms of adoption, simplicity and flexibility. These are key ingredients which ease development and speed the rate of innovation for customers which is the ultimate goal for any CMS.
Today’s CMS buyers should be looking for GraphQL API support from vendors, because of what GraphQL brings to the table in terms of simplicity and flexibility. Moreover, consider whether the out-of-the-box APIs provided are extensible and programmable. These are key ingredients that ease development and speed the rate of innovation, which is the ultimate goal for implementing any CMS and building great digital experiences.
Content Delivery is the Tip of the Iceberg
APIs are essential, and forward-thinking CMS vendors should also be offering GraphQL support, as CrafterCMS does. However, when it comes to supporting truly omnichannel customer experience, there’s more to the equation.
When choosing a CMS, brands also need to factor in:
- How marketer-friendly is the authoring experience?
- How DevOps-ready and agile development-friendly is your CMS?
- Can your chosen CMS’ infrastructure scale up and down as needed?
Finally, you need to ask if your chosen CMS is leading with DevContentOps support. CrafterCMS’ Git-based content repository allow content workflows to take on a CI/CD approach. This ensures content and code can easily be pushed and pulled to different environments without the difficulties of database syncs and migrations.
The Future of CMS (and Overcoming Problems in Content Management)
What Is a Hybrid CMS? (The Solution For Marketers & Developers)
eCommerce Personalization: Strategies for Success
Composable CMS: The Key to Increased Agility and Flexibility