Skip to main content
PATCH
/
contracts
/
{id}
Update a contract
curl --request PATCH \
  --url https://api.tomorro.com/v2/contracts/{id} \
  --header 'Content-Type: application/json' \
  --header 'x-api-key: <api-key>' \
  --data '
{
  "name": "Service Agreement - Acme Corp",
  "status": "draft",
  "folderId": "550e8400-e29b-41d4-a716-446655440005",
  "counterparty": {
    "name": "Acme Corporation"
  },
  "signatureDate": "2024-06-01T00:00:00.000Z",
  "signatories": {
    "internalSignatoryMemberIds": [
      "mem_550e8400-e29b-41d4-a716-446655440004"
    ],
    "externalSignatoryEmailList": [
      "signatory@example.com"
    ]
  },
  "fields": [
    {
      "fieldId": "550e8400-e29b-41d4-a716-446655440008",
      "value": "Technology"
    }
  ],
  "contractMembersIds": [
    "550e8400-e29b-41d4-a716-446655440004"
  ],
  "integration": {
    "type": "salesforce"
  }
}
'
{
  "id": "ctr_550e8400-e29b-41d4-a716-446655440000",
  "name": "Service Agreement - Acme Corp",
  "status": "draft",
  "counterparty": {
    "id": "550e8400-e29b-41d4-a716-446655440001",
    "name": "Acme Corporation"
  },
  "contractType": {
    "id": "550e8400-e29b-41d4-a716-446655440002",
    "name": "Service Agreement"
  },
  "templateId": "550e8400-e29b-41d4-a716-446655440003",
  "author": {
    "id": "550e8400-e29b-41d4-a716-446655440004",
    "email": "john.doe@example.com"
  },
  "fields": [
    {
      "attributeDefinitionId": "123e4567-e89b-12d3-a456-426614174000",
      "name": "Department",
      "value": "John Doe"
    }
  ],
  "signatories": [
    {
      "id": "sig_550e8400-e29b-41d4-a716-446655440005",
      "name": "John Doe",
      "email": "john.doe@example.com",
      "type": "member"
    }
  ],
  "createdAt": "2024-01-15T10:30:00.000Z",
  "contractMembers": [
    {
      "id": "550e8400-e29b-41d4-a716-446655440004",
      "email": "john.doe@example.com"
    }
  ]
}

Authorizations

x-api-key
string
header
required

API key for authentication. Get your key at https://app.tomorro.com/settings/integrations?integration=api-key

Path Parameters

id
string
required

The unique identifier (UUID) of the contract

Example:

"550e8400-e29b-41d4-a716-446655440000"

Body

application/json
name
string

The name or title of the contract.

Example:

"Service Agreement - Acme Corp"

status
enum<string>

The status of the contract.

  • draft: The contract is being created or edited.
  • negotiating: The contract is being reviewed with counterparties.
  • canceled: The contract has been canceled.
Available options:
draft,
negotiating,
signing,
signed,
canceled
Example:

"draft"

folderId
string

ID of the folder to move the contract to.

Example:

"550e8400-e29b-41d4-a716-446655440005"

counterparty
object

Counterparty for the contract. Can reference an existing counterparty by ID or update with a new name.

Example:
{ "name": "Acme Corporation" }
signatureDate
object

The date when the contract was signed.

Example:

"2024-06-01T00:00:00.000Z"

signatories
object

List of internal and external signatories for the contract

Example:
{
"internalSignatoryMemberIds": ["mem_550e8400-e29b-41d4-a716-446655440004"],
"externalSignatoryEmailList": ["signatory@example.com"]
}
fields
object[]

Field values to set on the contract. Use field IDs and values (option labels for select fields).

Example:
[
{
"fieldId": "550e8400-e29b-41d4-a716-446655440008",
"value": "Technology"
}
]
contractMembersIds
string[]

List of members to add to the contract

Example:
["550e8400-e29b-41d4-a716-446655440004"]
integration
object

Integration parameters. When provided, field values will be resolved using integration-specific option mappings.

Example:
{ "type": "salesforce" }

Response

Contract updated successfully

id
string
required

Unique identifier for the contract.

Example:

"ctr_550e8400-e29b-41d4-a716-446655440000"

name
string
required

The name or title of the contract.

Example:

"Service Agreement - Acme Corp"

status
string
required

The current status of the contract.

  • draft: The contract is being created or edited.
  • negotiating: The contract is being reviewed with counterparties.
  • signing: The contract is in the signature process.
  • signed: All parties have signed the contract.
  • canceled: The contract has been canceled.
Example:

"draft"

counterparty
object
required

The counterparty associated with this contract.

Example:
{
"id": "550e8400-e29b-41d4-a716-446655440001",
"name": "Acme Corporation"
}
contractType
object
required

The type of the contract, it is composed of many templates.

Example:
{
"id": "550e8400-e29b-41d4-a716-446655440002",
"name": "Service Agreement"
}
templateId
object
required

The template used to create this contract.

Example:

"550e8400-e29b-41d4-a716-446655440003"

author
object
required

The member who created this contract.

Example:
{
"id": "550e8400-e29b-41d4-a716-446655440004",
"email": "john.doe@example.com"
}
fields
object[]
required

The fields associated with this contract.

Example:
[
{
"attributeDefinitionId": "123e4567-e89b-12d3-a456-426614174000",
"name": "Department",
"value": "John Doe"
}
]
signatories
object[]
required

The signatories associated with this contract.

Example:
[
{
"id": "sig_550e8400-e29b-41d4-a716-446655440005",
"name": "John Doe",
"email": "john.doe@example.com",
"type": "member"
}
]
createdAt
string<date-time>
required

Time at which the contract was created. Formatted as an ISO 8601 date-time string.

Example:

"2024-01-15T10:30:00.000Z"

contractMembers
object[]

The list of participants with this contract.

Example:
[
{
"id": "550e8400-e29b-41d4-a716-446655440004",
"email": "john.doe@example.com"
}
]