# Environments

Environments are used to set up deployment workflows, roll out features, or keep test data isolated from production.

{% hint style="info" %}
A **production** environment is automatically created along with your project.
{% endhint %}

Create and manage existing environments using the [*/environments* endpoints](https://apidocs.umbracocompose.com/#tag/environments) in the Management API.

Resources of the following types can be created in an environment:

* Collection
* IngestFunction
* TypeSchema
* Webhook
* PersistedDocument

See how different resources relate to each other here:

![Project resources in relation to each other](https://1598002001-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FtrzaKUEixDATtGQPGwXB%2Fuploads%2Fgit-blob-92c3661ca5ce83118cba2603d07460d1239907c7%2Fproject-structure.png?alt=media)

{% hint style="info" %}
Across a single environment, resources of the same type need to be created with unique aliases.
{% endhint %}
