# Create an Output Contract

**Output Contracts** define how Data Mover connects with an actor to deliver files.&#x20;

The creation of the **Output Contract** consists of the same main steps as the Input Contract:

1. **Define the contract info**. This step defines the details of the contract, its name, type, and how it must be processed.
2. **Associate the contract with the actor**. This step defines the details of the actor that Data Mover needs to access to collect or send the files.
3. **Define the contract actions**. This step defines the trigger that will start the contract and the workflow associated with the contract.
4. **Set the contract variables**. This step defines the interaction between the contract and the workflow, setting the variables that will be initialized.&#x20;

## **Define the contract info**

To create a new Output Contract, go to **Design** → **Contracts** and click the **New** button to open the **New Contract** window.

<figure><img src="/files/IkBvrtC9Cb04hlAkr9wz" alt="" width="563"><figcaption></figcaption></figure>

As you can see on the left of the window, the wizard guides you through 3 subsequent steps:

* INFO
* ACTOR
* ACTIONS

To create an **Output Contract**, complete the fields in the **INFO** section as follows:

* **Name**: assign an identification name to the Contract. It is suggested to assign a name that can be easily identified at any time.
* **Description**: enter a description for the Contract you are creating.
* **Contract Type**: in the drop-down list, select **Output**.
* **Execution Queue**: by default a Contract is associated with the default queue. Queues order the tasks designed in the contract and define how they must be processed. To assign a contract to a different queue, open the drop-down menu and select another queue among those available. Details about queues can be found in the [Job Queues](/data-mover-1.21/monitoring/job-queues.md) section of this documentation.

After you have filled in all the fields click the **CONTINUE** button.

## **Associate the contract with the actor**

You will access the **ACTORS** section of the wizard where you must select the actor your contract will be associated to. Choose a **Partner** or **Application** from the drop-down list; if needed, a **Search** field is available to look for specific names. The list will be filtered as soon as you start typing an alpha-numeric character and all actors containing that character will be listed.

Now that an actor is selected, click the **CONTINUE** button.

## **Define the contract actions**

This step defines the trigger that will start the contract and the workflow associated with the contract.

<figure><img src="/files/6c7OhxmpToEIts6P3DkI" alt="" width="563"><figcaption></figcaption></figure>

Enter the **Action name**. If you are satisfied with the system-generated name, you can leave it as it is. If you are not, enter a different name.&#x20;

Select the **Trigger type** that will execute the contract. Possible options are listed on the [Triggers](/data-mover-1.21/workflow-templates/triggers.md) page and subpages.

Select the **Workflow** from the drop-down menu. A brief description of the template and a visual representation of the workflow will appear in the lower section of the window. For more information about workflows, refer to the [Workflow templates](/data-mover-1.21/workflow-templates/what-is-a-workflow-template.md) section.&#x20;

Once all the fields have been selected, click on the **SAVE** button. The wizard will be closed, and you will be directed to the **New Contract** page to configure action variables.

## **Set the contract variables**

The **New Contract** page consists of different sections, shown in this figure:

<figure><img src="/files/jELHGsNANfuXSyaaTUg7" alt="" width="563"><figcaption></figcaption></figure>

In the panel at the top of the page, you can edit the **Name**, **Description** and **Execution Queue** of the Contract.

The **Name, Status, Contract type** and **Actor** associated with your Contract are displayed in the panel on the right of the page. The **status of the contract** will appear as **ENABLED**. The toggle button cannot be set to DISABLED if the Contract is associated to an active FEL. The status of the contract is also shown in the Contracts column of the Contracts page. You can change the actor associated with the contract by selecting one of the entries in the Actor drop-down menu.

The action selected in the wizard will appear in the Actions section of this page. The <img src="https://files.readme.io/583b144-attention_icon.png" alt="" data-size="line"> icon next to the Action Name signals that the action variables have not been configured yet. To configure the action variables, click on the <img src="https://files.readme.io/735cfe6-icona_dat_1.png" alt="" data-size="line"> icon to expand the Action row.

Fill in the action variables, setting mandatory and optional parameters. The detailed list of all the variables associated with **System and Error Workflow templates**, refer to the [Workflow templates for output contracts](/data-mover-1.21/workflow-templates/system-workflow-templates/workflow-templates-for-output-contracts.md) and [Error handling workflow templates](/data-mover-1.21/workflow-templates/error-handling-workflow-templates.md) pages. As a general rule, the variable name and/or the description of the variable in the workflow template and in the output contract action are the same.&#x20;

Once all the variables are set, this icon <img src="https://files.readme.io/909e83e-check_icon.png" alt="" data-size="line"> will appear next to the Action Name and the status of the contract will change to READY.\
\
You can add a new action by clicking the <img src="https://files.readme.io/cd83794-add_action.png" alt="" data-size="line"> button below the Action variables row.


---

# Agent Instructions: 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:

```
GET https://docs.primeur.com/data-mover-1.21/contracts/create-your-first-contract/create-an-output-contract.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
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.
