> ## Documentation Index
> Fetch the complete documentation index at: https://studio.assembly.com/docs/llms.txt
> Use this file to discover all available pages before exploring further.

# Contracts

> A contract created when a client is requested to sign a Contract Template.

This resource represents a contract. A contract is created when you make a request for a client to sign a [Contract Template](/docs/api-reference/resources/contract-templates).

## Properties

**id** `string`
The unique identifier for this contract.

**createdAt** `string`
The date this item was created in RFC3339 format.

**updatedAt** `string`
The date this item was updated in RFC3339 format.

**object** `string`
The object type of this resource.

**contractTemplateId** `string`
The id of the parent contract template that the contract was generated from.

**clientId**  `string`
The ID of the Client that the contract is sent to.

**companyId**  `string`
Which of the client's companies this contract belongs to.

~~**recipientId**  `string`~~
This property has been deprecated in favor of clientId and companyId.

**name** `string`
The name of the contract. It comes from the contract template.

**shareDate** `string`
The date the contract was sent to the recipient.

**status** `string`
The current state of the contract. Options are: `pending` , `signed`

**fileUrl** `string`
A link to the original PDF of the contract.

**signedFileUrl** `string`
A link to the signed copy of the contract, complete with signatures from all parties.

**fields** `array(contractField)`

* **id** `string`
  The id of the contract field.
* **type** `string`
  The type of contract field. Options are: `signature` , `initials`, `date` , `text`
* **inputType** `string`
  Describes the type of the contract field input. Options are: `fixed`, `autoFill` , `client`, `variable`
* **isOptional** `boolean`
  Indicates whether or not the field was required to complete contract signing.
* **page** `number`
  The page number the contract field is on.
* **value** `string`
  The value of the response provided
* **label** `string`
  The name of the input. This will only be present on variable inputs.

```json Example Contract Object theme={null}
{
    "contractTemplateId": "1b458c73-a354-43b6-8628-a4c3ed8aee18",
    "createdAt": "2023-12-20T19:54:32.044269079Z",
    "fields": [
        {
            "id": "0fda76f5-1bf6-4b22-9261-0a406058a68e",
            "inputType": "client",
            "isOptional": false,
            "label": "signature_1",
            "page": 1,
            "type": "signature",
            "value": "John Client"
        },
        {
            "id": "5192e492-cb38-41a3-9001-21cf9cea853c",
            "inputType": "client",
            "isOptional": false,
            "label": "signature_2",
            "page": 1,
            "type": "signature",
            "value": "John Client"
        }
    ],
    "fileUrl": "https://assembly-user-files.s3.amazonaws.com/protected/...",
    "id": "5IlqGIdSg",
    "name": "Old signed file",
    "object": "contract",
    "recipientId": "9d69828c-5806-4f5a-b75b-60513d86676b",
    "clientId" : "9d69828c-5806-4f5a-b75b-60513d86676b",
    "companyId": "04a818c2-d035-495c-9cc2-06a11a8b91f6",
    "signedFileUrl": "https://assembly-user-files.s3.amazonaws.com/protected/...",
    "shareDate": "2023-12-20T19:54:32.036655259Z",
    "status": "signed",
    "updatedAt": "2023-12-20T19:54:32.044269079Z"
}
```
