With SaaS headless CMS, the vendor provides a hosted environment for content management. According to the metaphor, this content management environment is the body. Using webhooks to signal events, a headless CMS provides RESTful APIs and typically a browser-based UI with which to manage Content Types and Entries (sometimes called Items). Each Content Type is a collections of Field definitions. Each Entry is a collection of values for the Fields defined by the Content Type associated with the Entry. The CMS vendor provides hosted content management; customers implement and host content delivery tiers (heads) that consume JSON representations of Entries from the CMS. A face is a visual user interface hosted on a head, such as a website or a mobile app. By this metaphor, CMS developers, administrators, and users must be the neck, which may explain why CMS implementations can be a pain in the neck.
A headless CMS typically supports management of Assets, which are files including images, documents, and video that users upload to the CMS. RESTful APIs typically return metadata about Assets including the URLs of the assets as JSON; only specific SDKs APIs download or upload binary file data. Some headless CMS vendors provide APIs for manipulating and converting images and potentially video and other formats on the server before delivery, typically by adding query string parameters to the URL of an asset.
The CMS can use webhooks to pass data to downstream systems. This can result in excellent architectures, for example using the webhooks to populate search indexes and from which downstream systems retrieve data. More commonly, the content delivery tiers invoke RESTful APIs to retrieve data at runtime. For scalability and performance, to avoid runtime dependencies on the CMS, and for other reasons, some organizations choose to synchronize the data from the CMS into other systems and retrieve that rather than using the RESTful endpoints directly.