---
type: resource-type
title: Agreement
description: aws resource type AWS::Transfer::Agreement
name: Agreement
lexicon: aws
resource_type: AWS::Transfer::Agreement
---
`AWS::Transfer::Agreement`, a resource type of the aws lexicon.

## Properties

- `AccessRole` (`string`, required): Specifies the access role for the agreement.
- `LocalProfileId` (`string`, required): A unique identifier for the local profile.
- `PartnerProfileId` (`string`, required): A unique identifier for the partner profile.
- `ServerId` (`string`, required): A unique identifier for the server.
- `AgreementId` (`string`, optional): A unique identifier for the agreement.
- `Arn` (`string`, optional): Specifies the unique Amazon Resource Name (ARN) for the agreement.
- `BaseDirectory` (`string`, optional): Specifies the base directory for the agreement.
- `CustomDirectories` (`Record<string, unknown>`, optional): Specifies a separate directory for each type of file to store for an AS2 message.
- `Description` (`string`, optional): A textual description for the agreement.
- `EnforceMessageSigning` (`"DISABLED" | "ENABLED"`, optional): Specifies whether to enforce an AS2 message is signed for this agreement.
- `PreserveFilename` (`"DISABLED" | "ENABLED"`, optional): Specifies whether to preserve the filename received for this agreement.
- `Status` (`"ACTIVE" | "INACTIVE"`, optional): Specifies the status of the agreement.
- `Tags` (`Agreement_Tag[]`, optional): Key-value pairs that can be used to group and search for agreements. Tags are metadata attached to agreements for any purpose.

## Attributes

- `AgreementId`
- `Arn`
