# Update contract

Updates a contracts details

Endpoint: PATCH /v2/contracts/{contractId}

## Path parameters:

  - `contractId` (integer, required)
    The system identifier for the contract

## Request fields (application/merge-patch+json):

  - `name` (string)
    The user defined name of the contract
    Example: My contract

  - `owner` (object)
    The user assigned as the owner of the contract

  - `owner.id` (string)
    The unique identifier of the user
    Example: f0f1e06e-3005-4093-af7f-1934d55617e1

  - `owner.organization` (object)
    The organization the user belongs to

  - `owner.organization.id` (integer)
    The system identifier for the organization
    Example: 8134

  - `expiry` (string)
    The expiry date of the contract. The date and time uses the ISO-8601 format and will be in the Local timezone of the organization
    Example: 2024-12-25T00:00:00

  - `externalId` (string)
    A unique user defined identifier that can be used to reference another system
    Example: external-01

  - `restricted` (boolean)
    Is the contract only available to members.

An indicator where the contract requires membership to access
    Example: false

  - `status` (string)
    The current status of the contract
    Enum: "Draft", "Negotiating", "Approval", "Signing", "Executed", "Expired", "Void"

  - `teamAssigned` (object)
    The team which this contract is assigned to

  - `teamAssigned.id` (integer)
    The system identifier for the team
    Example: 469

## Response 400 fields (application/problem+json):

  - `detail` (string)
    More information about the problem.

  - `instance` (string)
    The URI of the resource which the error relates to.

  - `operationId` (string)
    A unique trace identifier for the request. This should be provided when requesting support.

  - `status` (integer)
    The HTTP status code for the problem.

  - `title` (string)
    A short description of the error.

  - `type` (string)
    A URI which can be followed to find out more about the problem.

## Response 403 fields (application/problem+json):

  - `detail` (string)
    More information about the problem.

  - `instance` (string)
    The URI of the resource which the error relates to.

  - `operationId` (string)
    A unique trace identifier for the request. This should be provided when requesting support.

  - `status` (integer)
    The HTTP status code for the problem.

  - `title` (string)
    A short description of the error.

  - `type` (string)
    A URI which can be followed to find out more about the problem.

## Response 404 fields (application/problem+json):

  - `detail` (string)
    More information about the problem.

  - `instance` (string)
    The URI of the resource which the error relates to.

  - `operationId` (string)
    A unique trace identifier for the request. This should be provided when requesting support.

  - `status` (integer)
    The HTTP status code for the problem.

  - `title` (string)
    A short description of the error.

  - `type` (string)
    A URI which can be followed to find out more about the problem.

## Response 409 fields (application/problem+json):

  - `detail` (string)
    More information about the problem.

  - `instance` (string)
    The URI of the resource which the error relates to.

  - `operationId` (string)
    A unique trace identifier for the request. This should be provided when requesting support.

  - `status` (integer)
    The HTTP status code for the problem.

  - `title` (string)
    A short description of the error.

  - `type` (string)
    A URI which can be followed to find out more about the problem.

