> For clean Markdown of any page, append .md to the page URL.
> For a complete documentation index, see https://contentful.com/developers/docs/llms.txt.
> For AI client integration (Claude Code, Cursor, etc.), connect to the MCP server at https://contentful.com/developers/docs/_mcp/server.

Templates allow you to create, compose and replicate configurations of content models across your multi-space set-ups. You can build templates from your existing content models and install them in other spaces and environments.

To support installations of content model templates across multiple spaces, the `EnvironmentTemplateInstallation` domain type has been implemented. The `EnvironmentTemplateInstallation` entity represents the installation of one template in a specific environment. In their current form, templates can only be used to distribute content types and editor interfaces.

Templates are managed at organizational level.

## Get all environment templates

This action returns a collection with all the environment templates in the organization repository. The templates are ordered by creation date descending.

[Get all environment templates](/references/content-management-api/content-model-templates/get-all-environment-templates)

## Create an environment template

This action creates an environment template in the organization repository. It implicitly creates a new version for this template.

[Create an environment template](/references/content-management-api/content-model-templates/create-an-environment-template)

## Get an environment template

This action returns a specific environment template in the organization repository. The returned template is also the latest version in the  **/versions** endpoint.

[Get an environment template](/references/content-management-api/content-model-templates/get-an-environment-template)

## Update an environment template

This action updates an environment template in the organization repository. It implicitly creates a new version of the template.

[Update an environment template](/references/content-management-api/content-model-templates/update-an-environment-template)

## Delete an environment template

This action deletes an environment template in the organization repository. It also removes all versions of this template. Entities that were created by this template through installations will not be affected and remain in the environments the template was installed in.

[Delete an environment template](/references/content-management-api/content-model-templates/delete-an-environment-template)

## Get all versions of an environment template

This action returns all the versions of an environment template. The versions are ordered by version number descending.

[Get all versions of an environment template](/references/content-management-api/content-model-templates/get-all-versions-of-an-environment-template)

## Return a version of an environment template

This action returns a certain version of an environment template.

[Return a version of an environment template](/references/content-management-api/content-model-templates/return-a-version-of-an-environment-template)

## Get all installations of an environment template

This action returns a collection with all installations of an environment template in the organization.

[Get all installations of an environment template](/references/content-management-api/content-model-templates/get-all-installations-of-an-environment-template)

## Get all installations for a template

This action returns a collection with all the installation objects for a given template in the environment.
An installation object is a document that links an environment and a template. It is created upon every request to install or update a template in an environment.
Templates are versioned. Version updates or failed installations result in new installation objects so there can be more than an installation object for one template in an environment.
Template installations can be used to trace the history and evolution of the template in the environment.
The template installations are ordered by creation date descending.

[Get all installations for a template](/references/content-management-api/content-model-templates/get-all-installations-for-a-template)

## Install a template in the environment

This action installs a template in the environment. Every successful call to this endpoint creates a new installation object.
The version number can be specified in the JSON payload. When no version is specified, it defaults to the latest version.

[Install a template in the environment](/references/content-management-api/content-model-templates/install-a-template-in-the-environment)

## Validate a template version for installation

This action validates a template version for installation in the environment.

[Validate a template version for installation](/references/content-management-api/content-model-templates/validate-a-template-version-for-installation)

## Validate the latest template version for installation

This action validates the latest version of a template for installation in the environment.

[Validate the latest template version for installation](/references/content-management-api/content-model-templates/validate-the-latest-template-version-for-installation)