> For the complete documentation index, see [llms.txt](https://docs.novacura.com/flow-development-guidelines/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.novacura.com/flow-development-guidelines/promoting-a-flow/untitled.md).

# Environments & Subscriptions

## Environments

Projects vary in size and complexity, but the recommended setup is to have a TEST environment and a PROD environment where flows are shared via a subscription from Test to Prod. &#x20;

* Flow Prod is connected to PROD ERP and/or PROD transactional databases.&#x20;
* Flow Test is connected to TEST ERP and/or TEST transactional databases. &#x20;

Larger projects can also include one or more dev environment where flows are developed in Dev, shared (Subscribed) to Test and validated by the customer, and then shared (Subscribed) from Dev to Prod. &#x20;

When upgrading to a new version of Flow it is advisable to have an exact copy of the Flow Prod environment as a "Flow upgrade test" environment connected to the ERP PROD. Letting a sub-set of users do their normal work in a test upgraded version of flow can give a better validation than trying to make users do non-useful work in a test environment.

## Subscriptions

Subscription must be used between the Test and Prod environment, or between a Dev and respectively Test and Prod environments. In order to subscribe, first the subscription needs to be created by entering a **Comment** in the **Distribute Version** popup and sharing. This Comment will be shown in the Notes of the subscribed flow on the Production side.

![](/files/-MK1Hl90_2r38gWkpGtF)

{% hint style="warning" %}
Connectors must be named the same in Test, Dev and Prod environments or else the subscription will not work.
{% endhint %}

{% hint style="warning" %}
Properties must be named the same in Test, Dev and Prod environments or else the subscription will not work.
{% endhint %}


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter, and the optional `goal` query parameter:

```
GET https://docs.novacura.com/flow-development-guidelines/promoting-a-flow/untitled.md?ask=<question>&goal=<endgoal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is optional and describes the broader end goal you are ultimately trying to accomplish on behalf of the user. GitBook uses it to tailor the answer towards what is most useful for that goal.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
