---
updatedAt: 2026-05-28T09:04:28.000Z
agentTools:
  projectIndex: https://developer.oneflow.com/llms.txt
---

# Update a contract by ID

Use this endpoint to update a specific contract by its ID. Note that many fields are only editable before the contract is signed.

# OpenAPI definition

```json
{
  "openapi": "3.0.0",
  "x-readme": {
    "explorer-enabled": false,
    "samples-languages": [
      "curl",
      "python"
    ]
  },
  "info": {
    "description": "This section describes all Oneflow public APIs and their methods used for creating and interacting with Oneflow contracts. All references are grouped into several main categories according to their function:",
    "version": "1",
    "title": "Public API for Oneflow"
  },
  "servers": [
    {
      "url": "https://{hostname}/v1",
      "variables": {
        "hostname": {
          "default": "api.oneflow.com"
        }
      }
    }
  ],
  "paths": {
    "/contracts/{contract_id}": {
      "put": {
        "summary": "Update a contract by ID",
        "operationId": "update-a-contract-by-id",
        "description": "Use this endpoint to update a specific contract by its ID. Note that many fields are only editable before the contract is signed.",
        "parameters": [
          {
            "name": "x-oneflow-api-token",
            "description": "The API key of your Oneflow account.",
            "in": "header",
            "required": true,
            "schema": {
              "type": "string",
              "pattern": "^[a-zA-Z0-9-]+$",
              "minLength": 40,
              "maxLength": 40
            },
            "example": "9841f1ee533681c3ea6a438560f2bb6c73b76675"
          },
          {
            "name": "x-oneflow-user-email",
            "description": "The email address of a registered Oneflow user.",
            "required": true,
            "in": "header",
            "schema": {
              "type": "string",
              "format": "email",
              "example": "john.doe@oneflow.com"
            },
            "x-oneflow-replace": {
              "schema": {
                "type": "string",
                "format": "email",
                "example": "john.doe@oneflow.com"
              }
            }
          },
          {
            "name": "contract_id",
            "in": "path",
            "required": true,
            "description": "The unique ID of the contract.",
            "schema": {
              "type": "integer",
              "format": "signed_integer_id"
            },
            "example": 10001
          }
        ],
        "requestBody": {
          "description": "Request body parameters for updating a contract.",
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "additionalProperties": false,
                "description": "Request body for an update contract request.",
                "properties": {
                  "_private": {
                    "type": "object",
                    "description": "Attributes that are only visible to the party of the current user. See [Private](https://developer.oneflow.com/docs/contract#private)",
                    "additionalProperties": false,
                    "properties": {
                      "name": {
                        "description": "The name of the contract.",
                        "type": "string",
                        "minLength": 0,
                        "maxLength": 130
                      },
                      "signing_period_expiration": {
                        "oneOf": [
                          {
                            "type": "object",
                            "title": "never",
                            "additionalProperties": false,
                            "description": "The signing period for this contract never expires.",
                            "required": [
                              "type"
                            ],
                            "properties": {
                              "type": {
                                "type": "string",
                                "description": "Can only be 'never'.",
                                "example": "never",
                                "enum": [
                                  "never"
                                ],
                                "default": "never"
                              }
                            }
                          },
                          {
                            "type": "object",
                            "title": "days_after_publish",
                            "additionalProperties": false,
                            "description": "This contract expires after the specified number of days after publication. You can use this option only if the contract is in the draft stage. Once the contract is published, the system will convert this type to `fixed_date.`",
                            "required": [
                              "type",
                              "expire_days_after_publish"
                            ],
                            "properties": {
                              "type": {
                                "type": "string",
                                "description": "Can only be 'days_after_publish'.",
                                "example": "days_after_publish",
                                "enum": [
                                  "days_after_publish"
                                ],
                                "default": "days_after_publish"
                              },
                              "expire_days_after_publish": {
                                "type": "integer",
                                "description": "The number of days the contract is available for signing after it has been published.",
                                "example": 14,
                                "minimum": 1,
                                "maximum": 36500
                              }
                            }
                          },
                          {
                            "type": "object",
                            "title": "fixed_date",
                            "additionalProperties": false,
                            "description": "The contract is available for signing until the specified date.",
                            "required": [
                              "type",
                              "expire_date"
                            ],
                            "properties": {
                              "type": {
                                "type": "string",
                                "description": "Can only be 'fixed_date'.",
                                "example": "fixed_date",
                                "enum": [
                                  "fixed_date"
                                ],
                                "default": "fixed_date"
                              },
                              "expire_date": {
                                "type": "string",
                                "description": "The final day the contract is valid for signing.",
                                "example": "2025-01-23",
                                "format": "date"
                              }
                            }
                          }
                        ],
                        "type": "object"
                      },
                      "single_sign": {
                        "description": "Enable or disable single sign on the contract.",
                        "type": "boolean"
                      },
                      "value": {
                        "type": "object",
                        "description": "The deal size of a contract as an amount of money.",
                        "additionalProperties": false,
                        "required": [
                          "amount"
                        ],
                        "nullable": true,
                        "properties": {
                          "amount": {
                            "description": "An amount specifying the total value.",
                            "type": "string",
                            "format": "amount",
                            "example": "500.10"
                          }
                        }
                      }
                    }
                  },
                  "sign_later": {
                    "description": "If set to <b>true</b>, the contract signing will postpone until the contract is ready.",
                    "type": "boolean"
                  },
                  "sign_order": {
                    "type": "array",
                    "description": "Sign order of the participants.",
                    "nullable": true,
                    "items": {
                      "type": "object",
                      "additionalProperties": false,
                      "required": [
                        "participant_id",
                        "order"
                      ],
                      "properties": {
                        "participant_id": {
                          "type": "integer",
                          "format": "signed_integer_id",
                          "description": "participant ID",
                          "example": 180224
                        },
                        "order": {
                          "type": "integer",
                          "minimum": 1,
                          "maximum": 1000,
                          "description": "Sign order",
                          "example": 2
                        }
                      }
                    }
                  },
                  "tags": {
                    "type": "array",
                    "description": "list of objects of tag ids to be left in the contract",
                    "items": {
                      "type": "object",
                      "additionalProperties": false,
                      "required": [
                        "id"
                      ],
                      "properties": {
                        "id": {
                          "type": "integer",
                          "format": "signed_integer_id",
                          "example": 380001
                        }
                      }
                    }
                  }
                }
              },
              "examples": {
                "contractUpdateRequestExample": {
                  "value": {
                    "_private": {
                      "name": "My First Contract Update",
                      "signing_period_expiration": {
                        "expire_days_after_publish": 14,
                        "type": "days_after_publish"
                      },
                      "value": {
                        "amount": "500.10"
                      }
                    },
                    "sign_later": false,
                    "sign_order": [
                      {
                        "order": 2,
                        "participant_id": 230002
                      },
                      {
                        "order": 1,
                        "participant_id": 230001
                      },
                      {
                        "order": 3,
                        "participant_id": 230003
                      }
                    ],
                    "tags": [
                      {
                        "id": 380001
                      },
                      {
                        "id": 380002
                      }
                    ]
                  }
                }
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Returns the updated [contract](contract).",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "additionalProperties": false,
                  "description": "See [Contract](https://developer.oneflow.com/docs/contract).",
                  "required": [
                    "_permissions",
                    "_private",
                    "_private_ownerside",
                    "attachment_file_groups",
                    "available_options",
                    "data_fields",
                    "id",
                    "image_file_groups",
                    "lifecycle_settings",
                    "lifecycle_state",
                    "parties",
                    "pdf_file_groups",
                    "product_groups",
                    "published_time",
                    "sign_order",
                    "signing_period_expiry_time",
                    "state",
                    "state_updated_time",
                    "tags",
                    "updated_time"
                  ],
                  "properties": {
                    "_links": {
                      "type": "object",
                      "additionalProperties": false,
                      "description": "Links to related endpoints.",
                      "properties": {
                        "comments": {
                          "type": "object",
                          "properties": {
                            "href": {
                              "type": "string",
                              "nullable": true
                            }
                          }
                        },
                        "contracts": {
                          "type": "object",
                          "properties": {
                            "href": {
                              "type": "string",
                              "nullable": true
                            }
                          }
                        },
                        "contract": {
                          "type": "object",
                          "properties": {
                            "href": {
                              "type": "string",
                              "nullable": true
                            }
                          }
                        },
                        "create": {
                          "type": "object",
                          "properties": {
                            "href": {
                              "type": "string",
                              "nullable": true
                            }
                          }
                        },
                        "data_field": {
                          "type": "object",
                          "properties": {
                            "href": {
                              "type": "string",
                              "nullable": true
                            }
                          }
                        },
                        "data_fields": {
                          "type": "object",
                          "properties": {
                            "href": {
                              "type": "string",
                              "nullable": true
                            }
                          }
                        },
                        "events": {
                          "type": "object",
                          "properties": {
                            "href": {
                              "type": "string",
                              "nullable": true
                            }
                          }
                        },
                        "event": {
                          "type": "object",
                          "properties": {
                            "href": {
                              "type": "string",
                              "nullable": true
                            }
                          }
                        },
                        "files": {
                          "type": "object",
                          "properties": {
                            "href": {
                              "type": "string",
                              "nullable": true
                            }
                          }
                        },
                        "file": {
                          "type": "object",
                          "properties": {
                            "href": {
                              "type": "string",
                              "nullable": true
                            }
                          }
                        },
                        "next": {
                          "type": "object",
                          "properties": {
                            "href": {
                              "type": "string",
                              "nullable": true
                            }
                          }
                        },
                        "parties": {
                          "type": "object",
                          "properties": {
                            "href": {
                              "type": "string",
                              "nullable": true
                            }
                          }
                        },
                        "party": {
                          "type": "object",
                          "properties": {
                            "href": {
                              "type": "string",
                              "nullable": true
                            }
                          }
                        },
                        "previous": {
                          "type": "object",
                          "properties": {
                            "href": {
                              "type": "string",
                              "nullable": true
                            }
                          }
                        },
                        "publish": {
                          "type": "object",
                          "properties": {
                            "href": {
                              "type": "string",
                              "nullable": true
                            }
                          }
                        },
                        "self": {
                          "type": "object",
                          "properties": {
                            "href": {
                              "type": "string",
                              "nullable": true
                            }
                          }
                        },
                        "template_types": {
                          "type": "object",
                          "properties": {
                            "href": {
                              "type": "string",
                              "nullable": true
                            }
                          }
                        },
                        "template_type": {
                          "type": "object",
                          "properties": {
                            "href": {
                              "type": "string",
                              "nullable": true
                            }
                          }
                        },
                        "template": {
                          "type": "object",
                          "properties": {
                            "href": {
                              "type": "string",
                              "nullable": true
                            }
                          }
                        },
                        "templates": {
                          "type": "object",
                          "properties": {
                            "href": {
                              "type": "string",
                              "nullable": true
                            }
                          }
                        },
                        "workspaces": {
                          "type": "object",
                          "properties": {
                            "href": {
                              "type": "string",
                              "nullable": true
                            }
                          }
                        },
                        "workspace": {
                          "type": "object",
                          "properties": {
                            "href": {
                              "type": "string",
                              "nullable": true
                            }
                          }
                        },
                        "playbooks": {
                          "type": "object",
                          "properties": {
                            "href": {
                              "type": "string",
                              "nullable": true
                            }
                          }
                        }
                      }
                    },
                    "_permissions": {
                      "type": "object",
                      "additionalProperties": false,
                      "description": "This attribute contains the permissions for various operations possible on the contract. The format of the permission is 'contract:' followed by the specific operation, like 'contract:create.'",
                      "required": [
                        "contract:delete",
                        "contract:download:pdf",
                        "contract:send"
                      ],
                      "properties": {
                        "contract:delete": {
                          "type": "boolean"
                        },
                        "contract:download:pdf": {
                          "type": "boolean"
                        },
                        "contract:send": {
                          "type": "boolean"
                        }
                      }
                    },
                    "_integration_permissions": {
                      "type": "array",
                      "additionalProperties": false,
                      "description": "A list of integration specific permissions. This exists only for specific integration tokens",
                      "items": {
                        "type": "object",
                        "additionalProperties": false,
                        "required": [
                          "key",
                          "value"
                        ],
                        "properties": {
                          "key": {
                            "type": "string"
                          },
                          "value": {
                            "type": "string"
                          }
                        }
                      }
                    },
                    "_private": {
                      "type": "object",
                      "description": "See [Private](https://developer.oneflow.com/docs/contract#private)",
                      "required": [
                        "date_format",
                        "value",
                        "folder",
                        "name",
                        "signing_period_expiration",
                        "workspace_id"
                      ],
                      "properties": {
                        "date_format": {
                          "description": "The date format of the contract.",
                          "type": "string"
                        },
                        "value": {
                          "type": "object",
                          "description": "See [Contract value](https://developer.oneflow.com/docs/contract#value).",
                          "required": [
                            "amount",
                            "currency"
                          ],
                          "nullable": true,
                          "properties": {
                            "amount": {
                              "type": "string",
                              "format": "amount"
                            },
                            "currency": {
                              "type": "string",
                              "format": "currency"
                            }
                          }
                        },
                        "folder": {
                          "additionalProperties": false,
                          "required": [
                            "id",
                            "name",
                            "parent_id",
                            "path"
                          ],
                          "description": "A folder.",
                          "properties": {
                            "id": {
                              "description": "Folder ID",
                              "type": "integer",
                              "format": "signed_integer_id"
                            },
                            "name": {
                              "description": "Folder name.",
                              "type": "string"
                            },
                            "parent_id": {
                              "description": "If exist any parent folder, its ID.",
                              "type": "integer",
                              "format": "signed_integer_id",
                              "nullable": true
                            },
                            "path": {
                              "description": "An array of folder IDs representing the path from the top of the hierarchy to the current folder.",
                              "type": "array",
                              "items": {
                                "type": "integer",
                                "format": "signed_integer_id"
                              }
                            }
                          }
                        },
                        "language": {
                          "description": "The language of the contract.",
                          "type": "string"
                        },
                        "name": {
                          "description": "The name of the contract.",
                          "type": "string"
                        },
                        "signing_period_expiration": {
                          "oneOf": [
                            {
                              "type": "object",
                              "additionalProperties": false,
                              "description": "The signing period for this contract never expires",
                              "required": [
                                "type"
                              ],
                              "properties": {
                                "type": {
                                  "type": "string",
                                  "description": "Can only be 'never'.",
                                  "enum": [
                                    "never"
                                  ]
                                }
                              }
                            },
                            {
                              "type": "object",
                              "additionalProperties": false,
                              "description": "The signing period for this contract expires a given number of days after publishing. This setting can only be used when the contract is in the draft stage. Converts into a \"fixed_date\" after the contract is published.",
                              "required": [
                                "type",
                                "expire_days_after_publish"
                              ],
                              "properties": {
                                "type": {
                                  "type": "string",
                                  "description": "Can only be 'days_after_publish'.",
                                  "enum": [
                                    "days_after_publish"
                                  ]
                                },
                                "expire_days_after_publish": {
                                  "type": "integer",
                                  "minimum": 1
                                }
                              }
                            },
                            {
                              "type": "object",
                              "additionalProperties": false,
                              "description": "The signing period for this contract expires on a set date.",
                              "required": [
                                "type",
                                "expire_date"
                              ],
                              "properties": {
                                "type": {
                                  "type": "string",
                                  "description": "Can only be 'fixed_date'.",
                                  "enum": [
                                    "fixed_date"
                                  ]
                                },
                                "expire_date": {
                                  "type": "string",
                                  "format": "date"
                                }
                              }
                            }
                          ]
                        },
                        "workspace_id": {
                          "description": "The unique id of this workspace.",
                          "type": "integer",
                          "format": "signed_integer_id",
                          "nullable": true
                        },
                        "single_sign": {
                          "description": "State of the feature single sign",
                          "type": "boolean",
                          "format": "single_sign"
                        }
                      }
                    },
                    "_private_ownerside": {
                      "type": "object",
                      "description": "Contract data that is private to the ownerside.",
                      "nullable": true,
                      "required": [
                        "created_time",
                        "template_id",
                        "template_type_id"
                      ],
                      "properties": {
                        "created_time": {
                          "type": "string",
                          "format": "datetime"
                        },
                        "template_id": {
                          "type": "integer",
                          "format": "signed_integer_id",
                          "nullable": true
                        },
                        "template_type_id": {
                          "type": "integer",
                          "format": "signed_integer_id",
                          "nullable": true
                        },
                        "playbook_id": {
                          "type": "integer",
                          "format": "signed_integer_id",
                          "nullable": true
                        },
                        "blueprint_ids": {
                          "type": "array",
                          "nullable": true,
                          "items": {
                            "type": "integer",
                            "format": "signed_integer_id"
                          }
                        }
                      }
                    },
                    "attachment_file_groups": {
                      "type": "array",
                      "description": "A list of attachment type file groups in the contract.",
                      "items": {
                        "description": "A file group represents an expanded PDF session or attachment session in the contract.",
                        "type": "object",
                        "additionalProperties": false,
                        "required": [
                          "_private_ownerside",
                          "files",
                          "id",
                          "type"
                        ],
                        "properties": {
                          "_private_ownerside": {
                            "type": "object",
                            "description": "File group data that is private to the ownerside.",
                            "nullable": true,
                            "required": [
                              "created_time",
                              "updated_time"
                            ],
                            "properties": {
                              "created_time": {
                                "type": "string",
                                "format": "datetime"
                              },
                              "updated_time": {
                                "type": "string",
                                "format": "datetime",
                                "nullable": true
                              }
                            }
                          },
                          "files": {
                            "type": "array",
                            "items": {
                              "type": "object",
                              "additionalProperties": false,
                              "description": "A single file of the contract file group.",
                              "required": [
                                "_private_ownerside",
                                "extension",
                                "id",
                                "name",
                                "size"
                              ],
                              "properties": {
                                "_private_ownerside": {
                                  "type": "object",
                                  "description": "File data that is private to the ownerside.",
                                  "nullable": true,
                                  "required": [
                                    "created_time",
                                    "updated_time"
                                  ],
                                  "properties": {
                                    "created_time": {
                                      "type": "string",
                                      "format": "datetime"
                                    },
                                    "updated_time": {
                                      "type": "string",
                                      "format": "datetime",
                                      "nullable": true
                                    }
                                  }
                                },
                                "extension": {
                                  "description": "The file extension.",
                                  "type": "string",
                                  "nullable": true
                                },
                                "id": {
                                  "type": "integer",
                                  "format": "signed_integer_id"
                                },
                                "name": {
                                  "description": "The name of the file.",
                                  "type": "string",
                                  "nullable": true
                                },
                                "size": {
                                  "description": "The size of the file in bytes.",
                                  "type": "integer",
                                  "nullable": true
                                }
                              }
                            }
                          },
                          "id": {
                            "type": "integer",
                            "format": "unsigned_integer_id"
                          },
                          "type": {
                            "type": "string",
                            "description": "The file group type of the file group sections. There are only two types available, `attachment` and `pdf`.",
                            "enum": [
                              "attachment",
                              "pdf"
                            ]
                          }
                        }
                      }
                    },
                    "available_options": {
                      "type": "object",
                      "additionalProperties": false,
                      "description": "Available options in the contract. See [Available options](https://developer.oneflow.com/docs/contract#available-options).",
                      "required": [
                        "can_receive_attachments",
                        "can_receive_expanded_pdf",
                        "can_receive_products",
                        "can_receive_product_tax",
                        "delivery_channels",
                        "sign_methods",
                        "two_step_authentication_methods"
                      ],
                      "properties": {
                        "can_receive_attachments": {
                          "type": "boolean"
                        },
                        "can_receive_expanded_pdf": {
                          "type": "boolean"
                        },
                        "can_receive_products": {
                          "type": "boolean"
                        },
                        "can_receive_product_tax": {
                          "type": "boolean"
                        },
                        "delivery_channels": {
                          "type": "array",
                          "items": {
                            "description": "See [Delivery channel options](contract#delivery-channels).",
                            "type": "object",
                            "additionalProperties": false,
                            "required": [
                              "name",
                              "preferred",
                              "required_participant_attributes"
                            ],
                            "properties": {
                              "name": {
                                "type": "string",
                                "description": "One of the contract [delivery channels](contract#delivery-channels).",
                                "enum": [
                                  "email",
                                  "sms",
                                  "email_and_sms",
                                  "same_device",
                                  "none",
                                  "unknown"
                                ]
                              },
                              "preferred": {
                                "type": "boolean"
                              },
                              "required_participant_attributes": {
                                "type": "array",
                                "items": {
                                  "type": "string"
                                }
                              }
                            }
                          }
                        },
                        "sign_methods": {
                          "type": "array",
                          "items": {
                            "description": "This attribute is only allowed for participants with the role signatory. For signatories it is required. Note that the participant role defaults to signatory. See [Contract sign methods](https://developer.oneflow.com/docs/contract#sign-methods).",
                            "type": "object",
                            "additionalProperties": false,
                            "required": [
                              "name",
                              "preferred"
                            ],
                            "properties": {
                              "name": {
                                "type": "string",
                                "description": "One of the [sign methods](contract#sign-methods).",
                                "enum": [
                                  "standard_esign",
                                  "sms",
                                  "swedish_bankid",
                                  "norwegian_bankid",
                                  "danish_mitid",
                                  "finnish_bankid",
                                  "handwritten_signature",
                                  "eid_sign",
                                  "unknown"
                                ]
                              },
                              "preferred": {
                                "type": "boolean"
                              }
                            }
                          }
                        },
                        "two_step_authentication_methods": {
                          "type": "array",
                          "items": {
                            "description": "See [Two-step authentication methods](https://developer.oneflow.com/docs/contract#two-step-authentication-methods)",
                            "type": "object",
                            "additionalProperties": false,
                            "required": [
                              "name",
                              "preferred",
                              "required_participant_attributes"
                            ],
                            "properties": {
                              "name": {
                                "type": "string",
                                "description": "One of the [two step authentication methods](contract#two-step-authentication-methods).",
                                "enum": [
                                  "email",
                                  "sms",
                                  "personal_identification",
                                  "none",
                                  "unknown"
                                ]
                              },
                              "preferred": {
                                "type": "boolean"
                              },
                              "required_participant_attributes": {
                                "type": "array",
                                "items": {
                                  "type": "string"
                                }
                              }
                            }
                          }
                        }
                      }
                    },
                    "data_fields": {
                      "type": "array",
                      "description": "The data fields that are part of the contract.",
                      "items": {
                        "type": "object",
                        "additionalProperties": false,
                        "description": "See [Data field](https://developer.oneflow.com/docs/data-field).",
                        "required": [
                          "_private_ownerside",
                          "description",
                          "id",
                          "name",
                          "placeholder",
                          "value"
                        ],
                        "properties": {
                          "_links": {
                            "type": "object",
                            "additionalProperties": false,
                            "description": "Links to related endpoints.",
                            "properties": {
                              "comments": {
                                "type": "object",
                                "properties": {
                                  "href": {
                                    "type": "string",
                                    "nullable": true
                                  }
                                }
                              },
                              "contracts": {
                                "type": "object",
                                "properties": {
                                  "href": {
                                    "type": "string",
                                    "nullable": true
                                  }
                                }
                              },
                              "contract": {
                                "type": "object",
                                "properties": {
                                  "href": {
                                    "type": "string",
                                    "nullable": true
                                  }
                                }
                              },
                              "create": {
                                "type": "object",
                                "properties": {
                                  "href": {
                                    "type": "string",
                                    "nullable": true
                                  }
                                }
                              },
                              "data_field": {
                                "type": "object",
                                "properties": {
                                  "href": {
                                    "type": "string",
                                    "nullable": true
                                  }
                                }
                              },
                              "data_fields": {
                                "type": "object",
                                "properties": {
                                  "href": {
                                    "type": "string",
                                    "nullable": true
                                  }
                                }
                              },
                              "events": {
                                "type": "object",
                                "properties": {
                                  "href": {
                                    "type": "string",
                                    "nullable": true
                                  }
                                }
                              },
                              "event": {
                                "type": "object",
                                "properties": {
                                  "href": {
                                    "type": "string",
                                    "nullable": true
                                  }
                                }
                              },
                              "files": {
                                "type": "object",
                                "properties": {
                                  "href": {
                                    "type": "string",
                                    "nullable": true
                                  }
                                }
                              },
                              "file": {
                                "type": "object",
                                "properties": {
                                  "href": {
                                    "type": "string",
                                    "nullable": true
                                  }
                                }
                              },
                              "next": {
                                "type": "object",
                                "properties": {
                                  "href": {
                                    "type": "string",
                                    "nullable": true
                                  }
                                }
                              },
                              "parties": {
                                "type": "object",
                                "properties": {
                                  "href": {
                                    "type": "string",
                                    "nullable": true
                                  }
                                }
                              },
                              "party": {
                                "type": "object",
                                "properties": {
                                  "href": {
                                    "type": "string",
                                    "nullable": true
                                  }
                                }
                              },
                              "previous": {
                                "type": "object",
                                "properties": {
                                  "href": {
                                    "type": "string",
                                    "nullable": true
                                  }
                                }
                              },
                              "publish": {
                                "type": "object",
                                "properties": {
                                  "href": {
                                    "type": "string",
                                    "nullable": true
                                  }
                                }
                              },
                              "self": {
                                "type": "object",
                                "properties": {
                                  "href": {
                                    "type": "string",
                                    "nullable": true
                                  }
                                }
                              },
                              "template_types": {
                                "type": "object",
                                "properties": {
                                  "href": {
                                    "type": "string",
                                    "nullable": true
                                  }
                                }
                              },
                              "template_type": {
                                "type": "object",
                                "properties": {
                                  "href": {
                                    "type": "string",
                                    "nullable": true
                                  }
                                }
                              },
                              "template": {
                                "type": "object",
                                "properties": {
                                  "href": {
                                    "type": "string",
                                    "nullable": true
                                  }
                                }
                              },
                              "templates": {
                                "type": "object",
                                "properties": {
                                  "href": {
                                    "type": "string",
                                    "nullable": true
                                  }
                                }
                              },
                              "workspaces": {
                                "type": "object",
                                "properties": {
                                  "href": {
                                    "type": "string",
                                    "nullable": true
                                  }
                                }
                              },
                              "workspace": {
                                "type": "object",
                                "properties": {
                                  "href": {
                                    "type": "string",
                                    "nullable": true
                                  }
                                }
                              },
                              "playbooks": {
                                "type": "object",
                                "properties": {
                                  "href": {
                                    "type": "string",
                                    "nullable": true
                                  }
                                }
                              }
                            }
                          },
                          "_private_ownerside": {
                            "type": "object",
                            "additionalProperties": false,
                            "description": "Data field attributes that are private to the ownerside.",
                            "required": [
                              "created_time",
                              "custom_id",
                              "updated_time"
                            ],
                            "properties": {
                              "created_time": {
                                "type": "string",
                                "format": "datetime"
                              },
                              "custom_id": {
                                "type": "string",
                                "minLength": 1,
                                "nullable": true
                              },
                              "updated_time": {
                                "type": "string",
                                "format": "datetime",
                                "nullable": true
                              }
                            }
                          },
                          "description": {
                            "type": "string"
                          },
                          "id": {
                            "type": "integer",
                            "format": "signed_integer_id"
                          },
                          "name": {
                            "type": "string",
                            "minLength": 1
                          },
                          "placeholder": {
                            "type": "string"
                          },
                          "value": {
                            "type": "string"
                          }
                        }
                      }
                    },
                    "draft_approval_workflow": {
                      "type": "object",
                      "description": "Draft approval work flow details.",
                      "nullable": true,
                      "properties": {
                        "status": {
                          "type": "string",
                          "nullable": true
                        }
                      }
                    },
                    "id": {
                      "type": "integer",
                      "format": "signed_integer_id"
                    },
                    "image_file_groups": {
                      "type": "array",
                      "description": "A list of image type file groups in the contract.",
                      "items": {
                        "description": "An image group and its associated image in the contract.",
                        "type": "object",
                        "additionalProperties": false,
                        "required": [
                          "_private_ownerside",
                          "files",
                          "id",
                          "type"
                        ],
                        "properties": {
                          "_private_ownerside": {
                            "type": "object",
                            "description": "Image group data that is private to the ownerside.",
                            "nullable": true,
                            "required": [
                              "created_time",
                              "custom_id",
                              "updated_time"
                            ],
                            "properties": {
                              "created_time": {
                                "type": "string",
                                "format": "datetime"
                              },
                              "custom_id": {
                                "type": "string",
                                "nullable": true
                              },
                              "updated_time": {
                                "type": "string",
                                "format": "datetime",
                                "nullable": true
                              }
                            }
                          },
                          "files": {
                            "type": "array",
                            "description": "A list of image files in the group.",
                            "items": {
                              "type": "object",
                              "additionalProperties": false,
                              "description": "A single image in an image group.",
                              "required": [
                                "_private_ownerside",
                                "alt_text",
                                "extension",
                                "id",
                                "size"
                              ],
                              "properties": {
                                "_private_ownerside": {
                                  "type": "object",
                                  "description": "File data that is private to the ownerside.",
                                  "nullable": true,
                                  "required": [
                                    "created_time",
                                    "updated_time"
                                  ],
                                  "properties": {
                                    "created_time": {
                                      "type": "string",
                                      "format": "datetime"
                                    },
                                    "updated_time": {
                                      "type": "string",
                                      "format": "datetime",
                                      "nullable": true
                                    }
                                  }
                                },
                                "alt_text": {
                                  "type": "string",
                                  "description": "The alternative text of the image.",
                                  "nullable": true
                                },
                                "extension": {
                                  "description": "The image extension.",
                                  "type": "string",
                                  "nullable": true
                                },
                                "id": {
                                  "type": "integer",
                                  "format": "unsigned_integer_id"
                                },
                                "size": {
                                  "description": "The size of the image in bytes.",
                                  "type": "integer",
                                  "nullable": true
                                }
                              }
                            }
                          },
                          "id": {
                            "type": "integer",
                            "format": "unsigned_integer_id"
                          },
                          "type": {
                            "type": "string",
                            "description": "The type of the image group. The only available type is `image`.",
                            "enum": [
                              "image"
                            ]
                          }
                        }
                      }
                    },
                    "imported": {
                      "description": "A flag denoting whether the contract has been imported or not.",
                      "type": "boolean",
                      "nullable": true
                    },
                    "lifecycle_settings": {
                      "type": "object",
                      "description": "See [Lifecycle settings](lifecycle-settings).",
                      "required": [
                        "duration",
                        "end_date",
                        "initial_duration",
                        "notice_period",
                        "start_date",
                        "type"
                      ],
                      "additionalProperties": false,
                      "nullable": true,
                      "properties": {
                        "duration": {
                          "type": "string",
                          "format": "duration",
                          "nullable": true
                        },
                        "end_date": {
                          "type": "string",
                          "format": "date",
                          "nullable": true
                        },
                        "initial_duration": {
                          "type": "string",
                          "format": "duration",
                          "nullable": true
                        },
                        "notice_period": {
                          "type": "string",
                          "format": "duration",
                          "nullable": true
                        },
                        "start_date": {
                          "type": "string",
                          "format": "date",
                          "nullable": true
                        },
                        "type": {
                          "type": "string",
                          "description": "One of the contract [duration types](contract#duration-type).",
                          "enum": [
                            "no_duration",
                            "single_period",
                            "recurring",
                            "recurring_two_periods",
                            "unknown"
                          ]
                        }
                      }
                    },
                    "lifecycle_state": {
                      "type": "object",
                      "additionalProperties": false,
                      "description": "Lifecycle information of the contract. See [Lifecycle state](https://developer.oneflow.com/docs/contract#lifecycle-state).",
                      "nullable": true,
                      "required": [
                        "composite",
                        "contract_end_time",
                        "contract_start_time",
                        "cancel_time",
                        "has_ended_by_termination",
                        "has_passed_notice_period_start_time",
                        "is_canceled",
                        "is_recurring",
                        "lifecycle_state",
                        "lifecycle_state_updated_time",
                        "notice_period_start_time",
                        "period",
                        "period_end_time",
                        "period_start_time"
                      ],
                      "properties": {
                        "composite": {
                          "type": "string",
                          "description": "One of the [lifecycle composites](contract#lifecycle-composite).",
                          "enum": [
                            "awaiting",
                            "awaiting-recurring",
                            "active",
                            "active-recurring",
                            "active-canceled-recurring",
                            "ended",
                            "ended-terminated",
                            "ended-terminated-recurring"
                          ]
                        },
                        "contract_end_time": {
                          "type": "string",
                          "format": "datetime",
                          "nullable": true
                        },
                        "contract_start_time": {
                          "type": "string",
                          "format": "datetime",
                          "nullable": true
                        },
                        "cancel_time": {
                          "type": "string",
                          "format": "datetime",
                          "nullable": true
                        },
                        "has_ended_by_termination": {
                          "type": "boolean"
                        },
                        "has_passed_notice_period_start_time": {
                          "type": "boolean"
                        },
                        "is_canceled": {
                          "type": "boolean"
                        },
                        "is_recurring": {
                          "type": "boolean"
                        },
                        "lifecycle_state": {
                          "type": "string",
                          "description": "One of the [lifecycle states](ccontract#lifecycle-states).",
                          "enum": [
                            "awaiting",
                            "active",
                            "ended",
                            "unknown"
                          ]
                        },
                        "lifecycle_state_updated_time": {
                          "type": "string",
                          "format": "datetime"
                        },
                        "notice_period_start_time": {
                          "type": "string",
                          "format": "datetime",
                          "nullable": true
                        },
                        "period": {
                          "type": "integer",
                          "nullable": true
                        },
                        "period_end_time": {
                          "type": "string",
                          "format": "datetime",
                          "nullable": true
                        },
                        "period_start_time": {
                          "type": "string",
                          "format": "datetime",
                          "nullable": true
                        }
                      }
                    },
                    "links": {
                      "type": "array",
                      "description": "All links on the contract. These links can be either `internal` or `external` (<b>links</b> is only available in the <b>Get a contract by ID</b> response)",
                      "items": {
                        "oneOf": [
                          {
                            "description": "Internal contract link.",
                            "title": "Internal",
                            "type": "object",
                            "additionalProperties": false,
                            "required": [
                              "id",
                              "linked_contract",
                              "type"
                            ],
                            "properties": {
                              "id": {
                                "type": "integer",
                                "format": "signed_integer_id"
                              },
                              "linked_contract": {
                                "type": "integer",
                                "format": "signed_integer_id"
                              },
                              "type": {
                                "type": "string",
                                "description": "One of the [link types](contract#links).",
                                "enum": [
                                  "amends",
                                  "amended_by",
                                  "sub_contract",
                                  "main_contract",
                                  "replaced_by",
                                  "replaces",
                                  "relates_to"
                                ]
                              }
                            }
                          },
                          {
                            "description": "External contract link.",
                            "title": "External",
                            "type": "object",
                            "additionalProperties": false,
                            "required": [
                              "id",
                              "type",
                              "external_link",
                              "external_title"
                            ],
                            "properties": {
                              "id": {
                                "type": "integer",
                                "format": "signed_integer_id"
                              },
                              "type": {
                                "description": "Can only be `external` of the [link types](contract#links).",
                                "type": "string",
                                "enum": [
                                  "external"
                                ]
                              },
                              "external_link": {
                                "type": "string",
                                "minLength": 1
                              },
                              "external_title": {
                                "type": "string",
                                "minLength": 1
                              }
                            }
                          }
                        ]
                      }
                    },
                    "marked_as_signed": {
                      "description": "A flag denoting whether the contract has been marked as signed or not.",
                      "type": "boolean",
                      "nullable": true
                    },
                    "parties": {
                      "type": "array",
                      "description": "The parties involved in this contract.",
                      "items": {
                        "oneOf": [
                          {
                            "title": "Individual",
                            "description": "An individual party, where a single participant is signing on behalf of him- or herself. See [Individual party](https://developer.oneflow.com/docs/party#individual)",
                            "type": "object",
                            "additionalProperties": false,
                            "required": [
                              "_private_ownerside",
                              "country_code",
                              "id",
                              "identification_number",
                              "my_party",
                              "name",
                              "participant",
                              "type"
                            ],
                            "properties": {
                              "_links": {
                                "type": "object",
                                "additionalProperties": false,
                                "description": "Links to related endpoints.",
                                "properties": {
                                  "comments": {
                                    "type": "object",
                                    "properties": {
                                      "href": {
                                        "type": "string",
                                        "nullable": true
                                      }
                                    }
                                  },
                                  "contracts": {
                                    "type": "object",
                                    "properties": {
                                      "href": {
                                        "type": "string",
                                        "nullable": true
                                      }
                                    }
                                  },
                                  "contract": {
                                    "type": "object",
                                    "properties": {
                                      "href": {
                                        "type": "string",
                                        "nullable": true
                                      }
                                    }
                                  },
                                  "create": {
                                    "type": "object",
                                    "properties": {
                                      "href": {
                                        "type": "string",
                                        "nullable": true
                                      }
                                    }
                                  },
                                  "data_field": {
                                    "type": "object",
                                    "properties": {
                                      "href": {
                                        "type": "string",
                                        "nullable": true
                                      }
                                    }
                                  },
                                  "data_fields": {
                                    "type": "object",
                                    "properties": {
                                      "href": {
                                        "type": "string",
                                        "nullable": true
                                      }
                                    }
                                  },
                                  "events": {
                                    "type": "object",
                                    "properties": {
                                      "href": {
                                        "type": "string",
                                        "nullable": true
                                      }
                                    }
                                  },
                                  "event": {
                                    "type": "object",
                                    "properties": {
                                      "href": {
                                        "type": "string",
                                        "nullable": true
                                      }
                                    }
                                  },
                                  "files": {
                                    "type": "object",
                                    "properties": {
                                      "href": {
                                        "type": "string",
                                        "nullable": true
                                      }
                                    }
                                  },
                                  "file": {
                                    "type": "object",
                                    "properties": {
                                      "href": {
                                        "type": "string",
                                        "nullable": true
                                      }
                                    }
                                  },
                                  "next": {
                                    "type": "object",
                                    "properties": {
                                      "href": {
                                        "type": "string",
                                        "nullable": true
                                      }
                                    }
                                  },
                                  "parties": {
                                    "type": "object",
                                    "properties": {
                                      "href": {
                                        "type": "string",
                                        "nullable": true
                                      }
                                    }
                                  },
                                  "party": {
                                    "type": "object",
                                    "properties": {
                                      "href": {
                                        "type": "string",
                                        "nullable": true
                                      }
                                    }
                                  },
                                  "previous": {
                                    "type": "object",
                                    "properties": {
                                      "href": {
                                        "type": "string",
                                        "nullable": true
                                      }
                                    }
                                  },
                                  "publish": {
                                    "type": "object",
                                    "properties": {
                                      "href": {
                                        "type": "string",
                                        "nullable": true
                                      }
                                    }
                                  },
                                  "self": {
                                    "type": "object",
                                    "properties": {
                                      "href": {
                                        "type": "string",
                                        "nullable": true
                                      }
                                    }
                                  },
                                  "template_types": {
                                    "type": "object",
                                    "properties": {
                                      "href": {
                                        "type": "string",
                                        "nullable": true
                                      }
                                    }
                                  },
                                  "template_type": {
                                    "type": "object",
                                    "properties": {
                                      "href": {
                                        "type": "string",
                                        "nullable": true
                                      }
                                    }
                                  },
                                  "template": {
                                    "type": "object",
                                    "properties": {
                                      "href": {
                                        "type": "string",
                                        "nullable": true
                                      }
                                    }
                                  },
                                  "templates": {
                                    "type": "object",
                                    "properties": {
                                      "href": {
                                        "type": "string",
                                        "nullable": true
                                      }
                                    }
                                  },
                                  "workspaces": {
                                    "type": "object",
                                    "properties": {
                                      "href": {
                                        "type": "string",
                                        "nullable": true
                                      }
                                    }
                                  },
                                  "workspace": {
                                    "type": "object",
                                    "properties": {
                                      "href": {
                                        "type": "string",
                                        "nullable": true
                                      }
                                    }
                                  },
                                  "playbooks": {
                                    "type": "object",
                                    "properties": {
                                      "href": {
                                        "type": "string",
                                        "nullable": true
                                      }
                                    }
                                  }
                                }
                              },
                              "_private_ownerside": {
                                "type": "object",
                                "description": "Party data that is private to the ownerside.",
                                "nullable": true,
                                "required": [
                                  "created_time",
                                  "custom_id",
                                  "updated_time"
                                ],
                                "properties": {
                                  "created_time": {
                                    "type": "string",
                                    "format": "datetime"
                                  },
                                  "custom_id": {
                                    "type": "string",
                                    "nullable": true
                                  },
                                  "updated_time": {
                                    "type": "string",
                                    "format": "datetime",
                                    "nullable": true
                                  }
                                }
                              },
                              "country_code": {
                                "type": "string",
                                "format": "country_code"
                              },
                              "id": {
                                "type": "integer",
                                "format": "signed_integer_id"
                              },
                              "identification_number": {
                                "type": "string"
                              },
                              "my_party": {
                                "type": "boolean"
                              },
                              "name": {
                                "type": "string",
                                "minLength": 1,
                                "nullable": true
                              },
                              "participant": {
                                "type": "object",
                                "nullable": false,
                                "additionalProperties": false,
                                "description": "See [Participant](https://developer.oneflow.com/docs/participant).",
                                "required": [
                                  "_permissions",
                                  "_private_ownerside",
                                  "delivery_channel",
                                  "delivery_status",
                                  "email",
                                  "id",
                                  "identification_number",
                                  "my_participant",
                                  "name",
                                  "organizer",
                                  "phone_number",
                                  "sign_method",
                                  "sign_state",
                                  "sign_state_updated_time",
                                  "signatory",
                                  "title",
                                  "two_step_authentication_method"
                                ],
                                "properties": {
                                  "_links": {
                                    "type": "object",
                                    "additionalProperties": false,
                                    "description": "Links to related endpoints.",
                                    "properties": {
                                      "comments": {
                                        "type": "object",
                                        "properties": {
                                          "href": {
                                            "type": "string",
                                            "nullable": true
                                          }
                                        }
                                      },
                                      "contracts": {
                                        "type": "object",
                                        "properties": {
                                          "href": {
                                            "type": "string",
                                            "nullable": true
                                          }
                                        }
                                      },
                                      "contract": {
                                        "type": "object",
                                        "properties": {
                                          "href": {
                                            "type": "string",
                                            "nullable": true
                                          }
                                        }
                                      },
                                      "create": {
                                        "type": "object",
                                        "properties": {
                                          "href": {
                                            "type": "string",
                                            "nullable": true
                                          }
                                        }
                                      },
                                      "data_field": {
                                        "type": "object",
                                        "properties": {
                                          "href": {
                                            "type": "string",
                                            "nullable": true
                                          }
                                        }
                                      },
                                      "data_fields": {
                                        "type": "object",
                                        "properties": {
                                          "href": {
                                            "type": "string",
                                            "nullable": true
                                          }
                                        }
                                      },
                                      "events": {
                                        "type": "object",
                                        "properties": {
                                          "href": {
                                            "type": "string",
                                            "nullable": true
                                          }
                                        }
                                      },
                                      "event": {
                                        "type": "object",
                                        "properties": {
                                          "href": {
                                            "type": "string",
                                            "nullable": true
                                          }
                                        }
                                      },
                                      "files": {
                                        "type": "object",
                                        "properties": {
                                          "href": {
                                            "type": "string",
                                            "nullable": true
                                          }
                                        }
                                      },
                                      "file": {
                                        "type": "object",
                                        "properties": {
                                          "href": {
                                            "type": "string",
                                            "nullable": true
                                          }
                                        }
                                      },
                                      "next": {
                                        "type": "object",
                                        "properties": {
                                          "href": {
                                            "type": "string",
                                            "nullable": true
                                          }
                                        }
                                      },
                                      "parties": {
                                        "type": "object",
                                        "properties": {
                                          "href": {
                                            "type": "string",
                                            "nullable": true
                                          }
                                        }
                                      },
                                      "party": {
                                        "type": "object",
                                        "properties": {
                                          "href": {
                                            "type": "string",
                                            "nullable": true
                                          }
                                        }
                                      },
                                      "previous": {
                                        "type": "object",
                                        "properties": {
                                          "href": {
                                            "type": "string",
                                            "nullable": true
                                          }
                                        }
                                      },
                                      "publish": {
                                        "type": "object",
                                        "properties": {
                                          "href": {
                                            "type": "string",
                                            "nullable": true
                                          }
                                        }
                                      },
                                      "self": {
                                        "type": "object",
                                        "properties": {
                                          "href": {
                                            "type": "string",
                                            "nullable": true
                                          }
                                        }
                                      },
                                      "template_types": {
                                        "type": "object",
                                        "properties": {
                                          "href": {
                                            "type": "string",
                                            "nullable": true
                                          }
                                        }
                                      },
                                      "template_type": {
                                        "type": "object",
                                        "properties": {
                                          "href": {
                                            "type": "string",
                                            "nullable": true
                                          }
                                        }
                                      },
                                      "template": {
                                        "type": "object",
                                        "properties": {
                                          "href": {
                                            "type": "string",
                                            "nullable": true
                                          }
                                        }
                                      },
                                      "templates": {
                                        "type": "object",
                                        "properties": {
                                          "href": {
                                            "type": "string",
                                            "nullable": true
                                          }
                                        }
                                      },
                                      "workspaces": {
                                        "type": "object",
                                        "properties": {
                                          "href": {
                                            "type": "string",
                                            "nullable": true
                                          }
                                        }
                                      },
                                      "workspace": {
                                        "type": "object",
                                        "properties": {
                                          "href": {
                                            "type": "string",
                                            "nullable": true
                                          }
                                        }
                                      },
                                      "playbooks": {
                                        "type": "object",
                                        "properties": {
                                          "href": {
                                            "type": "string",
                                            "nullable": true
                                          }
                                        }
                                      }
                                    }
                                  },
                                  "_permissions": {
                                    "type": "object",
                                    "additionalProperties": false,
                                    "description": "This attribute contains the permissions for the participant/creator on the contract.",
                                    "required": [
                                      "contract:update"
                                    ],
                                    "properties": {
                                      "contract:update": {
                                        "type": "boolean"
                                      }
                                    }
                                  },
                                  "_private_ownerside": {
                                    "type": "object",
                                    "description": "Participant data that is private to the ownerside.",
                                    "nullable": true,
                                    "required": [
                                      "created_time",
                                      "custom_id",
                                      "first_visited_time",
                                      "last_visited_time",
                                      "updated_time",
                                      "visits"
                                    ],
                                    "properties": {
                                      "created_time": {
                                        "type": "string",
                                        "format": "datetime"
                                      },
                                      "custom_id": {
                                        "type": "string",
                                        "nullable": true
                                      },
                                      "first_visited_time": {
                                        "type": "string",
                                        "format": "datetime",
                                        "nullable": true
                                      },
                                      "last_visited_time": {
                                        "type": "string",
                                        "format": "datetime",
                                        "nullable": true
                                      },
                                      "updated_time": {
                                        "type": "string",
                                        "format": "datetime",
                                        "nullable": true
                                      },
                                      "visits": {
                                        "type": "integer"
                                      }
                                    }
                                  },
                                  "delivery_channel": {
                                    "type": "string",
                                    "description": "One of the contract [delivery channels](contract#delivery-channels).",
                                    "enum": [
                                      "email",
                                      "sms",
                                      "email_and_sms",
                                      "same_device",
                                      "none",
                                      "unknown"
                                    ]
                                  },
                                  "delivery_status": {
                                    "type": "string",
                                    "description": "One of the contract [delivery status](contract-participant#delivery-status).",
                                    "enum": [
                                      "not_sent",
                                      "pending",
                                      "failure",
                                      "bounce",
                                      "success",
                                      "opened",
                                      "unknown"
                                    ]
                                  },
                                  "draft_approver": {
                                    "description": "A flag to indicate if the participant is a draft approver.",
                                    "type": "boolean"
                                  },
                                  "email": {
                                    "type": "string",
                                    "format": "email"
                                  },
                                  "id": {
                                    "type": "integer",
                                    "format": "signed_integer_id"
                                  },
                                  "identification_number": {
                                    "type": "string"
                                  },
                                  "my_participant": {
                                    "type": "boolean"
                                  },
                                  "name": {
                                    "type": "string",
                                    "minLength": 1,
                                    "nullable": true
                                  },
                                  "organizer": {
                                    "description": "A flag to indicate if the participant is an organizer combined with the permissions.",
                                    "type": "boolean"
                                  },
                                  "pending_approver": {
                                    "description": "A flag to indicate if the participant is a pending approver.",
                                    "type": "boolean"
                                  },
                                  "phone_number": {
                                    "type": "string",
                                    "nullable": true
                                  },
                                  "sign_method": {
                                    "type": "string",
                                    "description": "One of the [sign methods](contract#sign-methods).",
                                    "enum": [
                                      "standard_esign",
                                      "sms",
                                      "swedish_bankid",
                                      "norwegian_bankid",
                                      "danish_mitid",
                                      "finnish_bankid",
                                      "handwritten_signature",
                                      "eid_sign",
                                      "unknown"
                                    ]
                                  },
                                  "sign_state": {
                                    "type": "string",
                                    "description": "One of the [sign states](contract-participant#sign-state).",
                                    "enum": [
                                      "undecided",
                                      "signed",
                                      "declined",
                                      "unknown"
                                    ]
                                  },
                                  "sign_state_updated_time": {
                                    "type": "string",
                                    "format": "datetime",
                                    "nullable": true
                                  },
                                  "signatory": {
                                    "description": "A flag to indicate if the participant is an signatory combined with the permissions.",
                                    "type": "boolean"
                                  },
                                  "title": {
                                    "type": "string"
                                  },
                                  "two_step_authentication_method": {
                                    "type": "string",
                                    "description": "One of the [two step authentication methods](contract#two-step-authentication-methods).",
                                    "enum": [
                                      "email",
                                      "sms",
                                      "personal_identification",
                                      "none",
                                      "unknown"
                                    ]
                                  }
                                }
                              },
                              "type": {
                                "type": "string",
                                "description": "Can only be `individual`.",
                                "enum": [
                                  "individual"
                                ]
                              }
                            }
                          },
                          {
                            "title": "Company",
                            "description": "The participants are signing on behalf of this company. See [Company party](https://developer.oneflow.com/docs/party#company).",
                            "type": "object",
                            "additionalProperties": false,
                            "required": [
                              "_private_ownerside",
                              "country_code",
                              "id",
                              "identification_number",
                              "my_party",
                              "name",
                              "participants",
                              "type"
                            ],
                            "properties": {
                              "_links": {
                                "type": "object",
                                "additionalProperties": false,
                                "description": "Links to related endpoints.",
                                "properties": {
                                  "comments": {
                                    "type": "object",
                                    "properties": {
                                      "href": {
                                        "type": "string",
                                        "nullable": true
                                      }
                                    }
                                  },
                                  "contracts": {
                                    "type": "object",
                                    "properties": {
                                      "href": {
                                        "type": "string",
                                        "nullable": true
                                      }
                                    }
                                  },
                                  "contract": {
                                    "type": "object",
                                    "properties": {
                                      "href": {
                                        "type": "string",
                                        "nullable": true
                                      }
                                    }
                                  },
                                  "create": {
                                    "type": "object",
                                    "properties": {
                                      "href": {
                                        "type": "string",
                                        "nullable": true
                                      }
                                    }
                                  },
                                  "data_field": {
                                    "type": "object",
                                    "properties": {
                                      "href": {
                                        "type": "string",
                                        "nullable": true
                                      }
                                    }
                                  },
                                  "data_fields": {
                                    "type": "object",
                                    "properties": {
                                      "href": {
                                        "type": "string",
                                        "nullable": true
                                      }
                                    }
                                  },
                                  "events": {
                                    "type": "object",
                                    "properties": {
                                      "href": {
                                        "type": "string",
                                        "nullable": true
                                      }
                                    }
                                  },
                                  "event": {
                                    "type": "object",
                                    "properties": {
                                      "href": {
                                        "type": "string",
                                        "nullable": true
                                      }
                                    }
                                  },
                                  "files": {
                                    "type": "object",
                                    "properties": {
                                      "href": {
                                        "type": "string",
                                        "nullable": true
                                      }
                                    }
                                  },
                                  "file": {
                                    "type": "object",
                                    "properties": {
                                      "href": {
                                        "type": "string",
                                        "nullable": true
                                      }
                                    }
                                  },
                                  "next": {
                                    "type": "object",
                                    "properties": {
                                      "href": {
                                        "type": "string",
                                        "nullable": true
                                      }
                                    }
                                  },
                                  "parties": {
                                    "type": "object",
                                    "properties": {
                                      "href": {
                                        "type": "string",
                                        "nullable": true
                                      }
                                    }
                                  },
                                  "party": {
                                    "type": "object",
                                    "properties": {
                                      "href": {
                                        "type": "string",
                                        "nullable": true
                                      }
                                    }
                                  },
                                  "previous": {
                                    "type": "object",
                                    "properties": {
                                      "href": {
                                        "type": "string",
                                        "nullable": true
                                      }
                                    }
                                  },
                                  "publish": {
                                    "type": "object",
                                    "properties": {
                                      "href": {
                                        "type": "string",
                                        "nullable": true
                                      }
                                    }
                                  },
                                  "self": {
                                    "type": "object",
                                    "properties": {
                                      "href": {
                                        "type": "string",
                                        "nullable": true
                                      }
                                    }
                                  },
                                  "template_types": {
                                    "type": "object",
                                    "properties": {
                                      "href": {
                                        "type": "string",
                                        "nullable": true
                                      }
                                    }
                                  },
                                  "template_type": {
                                    "type": "object",
                                    "properties": {
                                      "href": {
                                        "type": "string",
                                        "nullable": true
                                      }
                                    }
                                  },
                                  "template": {
                                    "type": "object",
                                    "properties": {
                                      "href": {
                                        "type": "string",
                                        "nullable": true
                                      }
                                    }
                                  },
                                  "templates": {
                                    "type": "object",
                                    "properties": {
                                      "href": {
                                        "type": "string",
                                        "nullable": true
                                      }
                                    }
                                  },
                                  "workspaces": {
                                    "type": "object",
                                    "properties": {
                                      "href": {
                                        "type": "string",
                                        "nullable": true
                                      }
                                    }
                                  },
                                  "workspace": {
                                    "type": "object",
                                    "properties": {
                                      "href": {
                                        "type": "string",
                                        "nullable": true
                                      }
                                    }
                                  },
                                  "playbooks": {
                                    "type": "object",
                                    "properties": {
                                      "href": {
                                        "type": "string",
                                        "nullable": true
                                      }
                                    }
                                  }
                                }
                              },
                              "_private_ownerside": {
                                "type": "object",
                                "description": "Party data that is private to the ownerside.",
                                "nullable": true,
                                "required": [
                                  "created_time",
                                  "custom_id",
                                  "updated_time"
                                ],
                                "properties": {
                                  "created_time": {
                                    "type": "string",
                                    "format": "datetime"
                                  },
                                  "custom_id": {
                                    "type": "string",
                                    "nullable": true
                                  },
                                  "updated_time": {
                                    "type": "string",
                                    "format": "datetime",
                                    "nullable": true
                                  }
                                }
                              },
                              "country_code": {
                                "type": "string",
                                "format": "country_code"
                              },
                              "id": {
                                "type": "integer",
                                "format": "signed_integer_id"
                              },
                              "identification_number": {
                                "type": "string"
                              },
                              "my_party": {
                                "type": "boolean"
                              },
                              "name": {
                                "type": "string",
                                "minLength": 1
                              },
                              "participants": {
                                "description": "The maximum number of participants per contract across all parties is 40.",
                                "type": "array",
                                "items": {
                                  "type": "object",
                                  "nullable": false,
                                  "additionalProperties": false,
                                  "description": "See [Participant](https://developer.oneflow.com/docs/participant).",
                                  "required": [
                                    "_permissions",
                                    "_private_ownerside",
                                    "delivery_channel",
                                    "delivery_status",
                                    "email",
                                    "id",
                                    "identification_number",
                                    "my_participant",
                                    "name",
                                    "organizer",
                                    "phone_number",
                                    "sign_method",
                                    "sign_state",
                                    "sign_state_updated_time",
                                    "signatory",
                                    "title",
                                    "two_step_authentication_method"
                                  ],
                                  "properties": {
                                    "_links": {
                                      "type": "object",
                                      "additionalProperties": false,
                                      "description": "Links to related endpoints.",
                                      "properties": {
                                        "comments": {
                                          "type": "object",
                                          "properties": {
                                            "href": {
                                              "type": "string",
                                              "nullable": true
                                            }
                                          }
                                        },
                                        "contracts": {
                                          "type": "object",
                                          "properties": {
                                            "href": {
                                              "type": "string",
                                              "nullable": true
                                            }
                                          }
                                        },
                                        "contract": {
                                          "type": "object",
                                          "properties": {
                                            "href": {
                                              "type": "string",
                                              "nullable": true
                                            }
                                          }
                                        },
                                        "create": {
                                          "type": "object",
                                          "properties": {
                                            "href": {
                                              "type": "string",
                                              "nullable": true
                                            }
                                          }
                                        },
                                        "data_field": {
                                          "type": "object",
                                          "properties": {
                                            "href": {
                                              "type": "string",
                                              "nullable": true
                                            }
                                          }
                                        },
                                        "data_fields": {
                                          "type": "object",
                                          "properties": {
                                            "href": {
                                              "type": "string",
                                              "nullable": true
                                            }
                                          }
                                        },
                                        "events": {
                                          "type": "object",
                                          "properties": {
                                            "href": {
                                              "type": "string",
                                              "nullable": true
                                            }
                                          }
                                        },
                                        "event": {
                                          "type": "object",
                                          "properties": {
                                            "href": {
                                              "type": "string",
                                              "nullable": true
                                            }
                                          }
                                        },
                                        "files": {
                                          "type": "object",
                                          "properties": {
                                            "href": {
                                              "type": "string",
                                              "nullable": true
                                            }
                                          }
                                        },
                                        "file": {
                                          "type": "object",
                                          "properties": {
                                            "href": {
                                              "type": "string",
                                              "nullable": true
                                            }
                                          }
                                        },
                                        "next": {
                                          "type": "object",
                                          "properties": {
                                            "href": {
                                              "type": "string",
                                              "nullable": true
                                            }
                                          }
                                        },
                                        "parties": {
                                          "type": "object",
                                          "properties": {
                                            "href": {
                                              "type": "string",
                                              "nullable": true
                                            }
                                          }
                                        },
                                        "party": {
                                          "type": "object",
                                          "properties": {
                                            "href": {
                                              "type": "string",
                                              "nullable": true
                                            }
                                          }
                                        },
                                        "previous": {
                                          "type": "object",
                                          "properties": {
                                            "href": {
                                              "type": "string",
                                              "nullable": true
                                            }
                                          }
                                        },
                                        "publish": {
                                          "type": "object",
                                          "properties": {
                                            "href": {
                                              "type": "string",
                                              "nullable": true
                                            }
                                          }
                                        },
                                        "self": {
                                          "type": "object",
                                          "properties": {
                                            "href": {
                                              "type": "string",
                                              "nullable": true
                                            }
                                          }
                                        },
                                        "template_types": {
                                          "type": "object",
                                          "properties": {
                                            "href": {
                                              "type": "string",
                                              "nullable": true
                                            }
                                          }
                                        },
                                        "template_type": {
                                          "type": "object",
                                          "properties": {
                                            "href": {
                                              "type": "string",
                                              "nullable": true
                                            }
                                          }
                                        },
                                        "template": {
                                          "type": "object",
                                          "properties": {
                                            "href": {
                                              "type": "string",
                                              "nullable": true
                                            }
                                          }
                                        },
                                        "templates": {
                                          "type": "object",
                                          "properties": {
                                            "href": {
                                              "type": "string",
                                              "nullable": true
                                            }
                                          }
                                        },
                                        "workspaces": {
                                          "type": "object",
                                          "properties": {
                                            "href": {
                                              "type": "string",
                                              "nullable": true
                                            }
                                          }
                                        },
                                        "workspace": {
                                          "type": "object",
                                          "properties": {
                                            "href": {
                                              "type": "string",
                                              "nullable": true
                                            }
                                          }
                                        },
                                        "playbooks": {
                                          "type": "object",
                                          "properties": {
                                            "href": {
                                              "type": "string",
                                              "nullable": true
                                            }
                                          }
                                        }
                                      }
                                    },
                                    "_permissions": {
                                      "type": "object",
                                      "additionalProperties": false,
                                      "description": "This attribute contains the permissions for the participant/creator on the contract.",
                                      "required": [
                                        "contract:update"
                                      ],
                                      "properties": {
                                        "contract:update": {
                                          "type": "boolean"
                                        }
                                      }
                                    },
                                    "_private_ownerside": {
                                      "type": "object",
                                      "description": "Participant data that is private to the ownerside.",
                                      "nullable": true,
                                      "required": [
                                        "created_time",
                                        "custom_id",
                                        "first_visited_time",
                                        "last_visited_time",
                                        "updated_time",
                                        "visits"
                                      ],
                                      "properties": {
                                        "created_time": {
                                          "type": "string",
                                          "format": "datetime"
                                        },
                                        "custom_id": {
                                          "type": "string",
                                          "nullable": true
                                        },
                                        "first_visited_time": {
                                          "type": "string",
                                          "format": "datetime",
                                          "nullable": true
                                        },
                                        "last_visited_time": {
                                          "type": "string",
                                          "format": "datetime",
                                          "nullable": true
                                        },
                                        "updated_time": {
                                          "type": "string",
                                          "format": "datetime",
                                          "nullable": true
                                        },
                                        "visits": {
                                          "type": "integer"
                                        }
                                      }
                                    },
                                    "delivery_channel": {
                                      "type": "string",
                                      "description": "One of the contract [delivery channels](contract#delivery-channels).",
                                      "enum": [
                                        "email",
                                        "sms",
                                        "email_and_sms",
                                        "same_device",
                                        "none",
                                        "unknown"
                                      ]
                                    },
                                    "delivery_status": {
                                      "type": "string",
                                      "description": "One of the contract [delivery status](contract-participant#delivery-status).",
                                      "enum": [
                                        "not_sent",
                                        "pending",
                                        "failure",
                                        "bounce",
                                        "success",
                                        "opened",
                                        "unknown"
                                      ]
                                    },
                                    "draft_approver": {
                                      "description": "A flag to indicate if the participant is a draft approver.",
                                      "type": "boolean"
                                    },
                                    "email": {
                                      "type": "string",
                                      "format": "email"
                                    },
                                    "id": {
                                      "type": "integer",
                                      "format": "signed_integer_id"
                                    },
                                    "identification_number": {
                                      "type": "string"
                                    },
                                    "my_participant": {
                                      "type": "boolean"
                                    },
                                    "name": {
                                      "type": "string",
                                      "minLength": 1,
                                      "nullable": true
                                    },
                                    "organizer": {
                                      "description": "A flag to indicate if the participant is an organizer combined with the permissions.",
                                      "type": "boolean"
                                    },
                                    "pending_approver": {
                                      "description": "A flag to indicate if the participant is a pending approver.",
                                      "type": "boolean"
                                    },
                                    "phone_number": {
                                      "type": "string",
                                      "nullable": true
                                    },
                                    "sign_method": {
                                      "type": "string",
                                      "description": "One of the [sign methods](contract#sign-methods).",
                                      "enum": [
                                        "standard_esign",
                                        "sms",
                                        "swedish_bankid",
                                        "norwegian_bankid",
                                        "danish_mitid",
                                        "finnish_bankid",
                                        "handwritten_signature",
                                        "eid_sign",
                                        "unknown"
                                      ]
                                    },
                                    "sign_state": {
                                      "type": "string",
                                      "description": "One of the [sign states](contract-participant#sign-state).",
                                      "enum": [
                                        "undecided",
                                        "signed",
                                        "declined",
                                        "unknown"
                                      ]
                                    },
                                    "sign_state_updated_time": {
                                      "type": "string",
                                      "format": "datetime",
                                      "nullable": true
                                    },
                                    "signatory": {
                                      "description": "A flag to indicate if the participant is an signatory combined with the permissions.",
                                      "type": "boolean"
                                    },
                                    "title": {
                                      "type": "string"
                                    },
                                    "two_step_authentication_method": {
                                      "type": "string",
                                      "description": "One of the [two step authentication methods](contract#two-step-authentication-methods).",
                                      "enum": [
                                        "email",
                                        "sms",
                                        "personal_identification",
                                        "none",
                                        "unknown"
                                      ]
                                    }
                                  }
                                }
                              },
                              "type": {
                                "type": "string",
                                "description": "Can only be `company`.",
                                "enum": [
                                  "company"
                                ]
                              }
                            }
                          }
                        ]
                      }
                    },
                    "pdf_file_groups": {
                      "type": "array",
                      "description": "A list of expanded pdf type file groups in the contract.",
                      "items": {
                        "description": "A file group represents an expanded PDF session or attachment session in the contract.",
                        "type": "object",
                        "additionalProperties": false,
                        "required": [
                          "_private_ownerside",
                          "files",
                          "id",
                          "type"
                        ],
                        "properties": {
                          "_private_ownerside": {
                            "type": "object",
                            "description": "File group data that is private to the ownerside.",
                            "nullable": true,
                            "required": [
                              "created_time",
                              "updated_time"
                            ],
                            "properties": {
                              "created_time": {
                                "type": "string",
                                "format": "datetime"
                              },
                              "updated_time": {
                                "type": "string",
                                "format": "datetime",
                                "nullable": true
                              }
                            }
                          },
                          "files": {
                            "type": "array",
                            "items": {
                              "type": "object",
                              "additionalProperties": false,
                              "description": "A single file of the contract file group.",
                              "required": [
                                "_private_ownerside",
                                "extension",
                                "id",
                                "name",
                                "size"
                              ],
                              "properties": {
                                "_private_ownerside": {
                                  "type": "object",
                                  "description": "File data that is private to the ownerside.",
                                  "nullable": true,
                                  "required": [
                                    "created_time",
                                    "updated_time"
                                  ],
                                  "properties": {
                                    "created_time": {
                                      "type": "string",
                                      "format": "datetime"
                                    },
                                    "updated_time": {
                                      "type": "string",
                                      "format": "datetime",
                                      "nullable": true
                                    }
                                  }
                                },
                                "extension": {
                                  "description": "The file extension.",
                                  "type": "string",
                                  "nullable": true
                                },
                                "id": {
                                  "type": "integer",
                                  "format": "signed_integer_id"
                                },
                                "name": {
                                  "description": "The name of the file.",
                                  "type": "string",
                                  "nullable": true
                                },
                                "size": {
                                  "description": "The size of the file in bytes.",
                                  "type": "integer",
                                  "nullable": true
                                }
                              }
                            }
                          },
                          "id": {
                            "type": "integer",
                            "format": "unsigned_integer_id"
                          },
                          "type": {
                            "type": "string",
                            "description": "The file group type of the file group sections. There are only two types available, `attachment` and `pdf`.",
                            "enum": [
                              "attachment",
                              "pdf"
                            ]
                          }
                        }
                      }
                    },
                    "pending_approval_workflow": {
                      "type": "object",
                      "description": "Pending approval work flow details.",
                      "nullable": true,
                      "properties": {
                        "status": {
                          "type": "string",
                          "nullable": true
                        }
                      }
                    },
                    "product_groups": {
                      "description": "A list of product groups.",
                      "type": "array",
                      "items": {
                        "description": "A product group represents a product table in the contract, see [Product group](https://developer.oneflow.com/docs/product-group).",
                        "type": "object",
                        "additionalProperties": false,
                        "required": [
                          "_private_ownerside",
                          "configuration",
                          "enabled_columns",
                          "id",
                          "products"
                        ],
                        "properties": {
                          "_private_ownerside": {
                            "type": "object",
                            "description": "Product group data that is private to the ownerside.",
                            "nullable": true,
                            "required": [
                              "created_time",
                              "custom_id",
                              "updated_time"
                            ],
                            "properties": {
                              "created_time": {
                                "type": "string",
                                "format": "datetime"
                              },
                              "custom_id": {
                                "type": "string",
                                "minLength": 1,
                                "nullable": true
                              },
                              "updated_time": {
                                "type": "string",
                                "format": "datetime",
                                "nullable": true
                              }
                            }
                          },
                          "configuration": {
                            "type": "object",
                            "additionalProperties": false,
                            "description": "Updated product group configuration",
                            "properties": {
                              "columns": {
                                "type": "array",
                                "items": {
                                  "type": "object",
                                  "additionalProperties": false,
                                  "description": "Product group columns data.",
                                  "required": [
                                    "key"
                                  ],
                                  "properties": {
                                    "enabled": {
                                      "type": "boolean"
                                    },
                                    "key": {
                                      "description": "One of the product group column keys.",
                                      "type": "string",
                                      "enum": [
                                        "name",
                                        "description",
                                        "price_1",
                                        "price_2",
                                        "count"
                                      ]
                                    },
                                    "label": {
                                      "type": "string"
                                    },
                                    "tax_1": {
                                      "type": "object",
                                      "additionalProperties": false,
                                      "description": "Product group tax display name.",
                                      "nullable": false,
                                      "properties": {
                                        "label": {
                                          "description": "The product group tax display name label.",
                                          "type": "string",
                                          "nullable": false
                                        },
                                        "incl_tax": {
                                          "description": "If true, prices are entered including tax.",
                                          "type": "boolean",
                                          "nullable": false
                                        }
                                      }
                                    }
                                  }
                                }
                              },
                              "counterpart_edit": {
                                "type": "boolean"
                              },
                              "hide_price_summation": {
                                "type": "boolean"
                              },
                              "name": {
                                "type": "object",
                                "additionalProperties": false,
                                "description": "Product group name data.",
                                "properties": {
                                  "enabled": {
                                    "description": "If true, the product group name is enabled.",
                                    "type": "boolean"
                                  },
                                  "label": {
                                    "description": "The product group name label.",
                                    "type": "string"
                                  }
                                }
                              },
                              "price_affixes": {
                                "type": "object",
                                "additionalProperties": false,
                                "description": "Postfix and prefix of a contract product price.",
                                "properties": {
                                  "postfix": {
                                    "type": "string"
                                  },
                                  "prefix": {
                                    "type": "string"
                                  }
                                }
                              },
                              "price_precision": {
                                "type": "integer",
                                "nullable": true
                              },
                              "quantity_precision": {
                                "type": "integer",
                                "nullable": true
                              },
                              "tax_1": {
                                "type": "object",
                                "additionalProperties": false,
                                "description": "Product group tax display name.",
                                "nullable": false,
                                "properties": {
                                  "label": {
                                    "description": "The product group tax display name label.",
                                    "type": "string",
                                    "nullable": false
                                  },
                                  "incl_tax": {
                                    "description": "If true, prices are entered including tax.",
                                    "type": "boolean",
                                    "nullable": false
                                  }
                                }
                              }
                            }
                          },
                          "created_from": {
                            "type": "integer",
                            "description": "This will be only available in the contract create response.",
                            "format": "unsigned_integer_id",
                            "nullable": true
                          },
                          "enabled_columns": {
                            "type": "array",
                            "items": {
                              "type": "object",
                              "additionalProperties": false,
                              "description": "An individual product table columns enable information.",
                              "required": [
                                "enabled",
                                "key"
                              ],
                              "properties": {
                                "enabled": {
                                  "type": "boolean"
                                },
                                "key": {
                                  "type": "string"
                                }
                              }
                            }
                          },
                          "id": {
                            "type": "integer",
                            "format": "unsigned_integer_id"
                          },
                          "products": {
                            "type": "array",
                            "items": {
                              "type": "object",
                              "additionalProperties": false,
                              "description": "An individual product in a contract's product table.",
                              "required": [
                                "_private_ownerside",
                                "id",
                                "name",
                                "price_1",
                                "price_2",
                                "quantity"
                              ],
                              "properties": {
                                "_private_ownerside": {
                                  "type": "object",
                                  "description": "Product data that is private to the ownerside.",
                                  "nullable": true,
                                  "required": [
                                    "created_time",
                                    "custom_id",
                                    "updated_time"
                                  ],
                                  "properties": {
                                    "created_time": {
                                      "type": "string",
                                      "format": "datetime"
                                    },
                                    "custom_id": {
                                      "type": "string",
                                      "minLength": 1,
                                      "nullable": true
                                    },
                                    "updated_time": {
                                      "type": "string",
                                      "format": "datetime",
                                      "nullable": true
                                    }
                                  }
                                },
                                "counterparty_lock": {
                                  "type": "boolean"
                                },
                                "created_from": {
                                  "type": "integer",
                                  "description": "This will be only available in the contract create response.",
                                  "format": "unsigned_integer_id",
                                  "nullable": true
                                },
                                "description": {
                                  "type": "string"
                                },
                                "id": {
                                  "type": "integer",
                                  "format": "unsigned_integer_id"
                                },
                                "name": {
                                  "type": "string"
                                },
                                "price_1": {
                                  "description": "An object that holds all price related information for an individual product.",
                                  "type": "object",
                                  "additionalProperties": false,
                                  "nullable": true,
                                  "required": [
                                    "amount",
                                    "base_amount",
                                    "discount_amount",
                                    "discount_percent"
                                  ],
                                  "properties": {
                                    "amount": {
                                      "description": "The price amount after discount.",
                                      "type": "object",
                                      "required": [
                                        "amount"
                                      ],
                                      "properties": {
                                        "amount": {
                                          "type": "string",
                                          "format": "signed_amount_4_decimal",
                                          "nullable": true
                                        }
                                      }
                                    },
                                    "base_amount": {
                                      "description": "The price amount before discount.",
                                      "type": "object",
                                      "required": [
                                        "amount"
                                      ],
                                      "properties": {
                                        "amount": {
                                          "type": "string",
                                          "format": "amount_4_decimal",
                                          "nullable": true
                                        }
                                      }
                                    },
                                    "discount_amount": {
                                      "description": "The absolute discount amount.",
                                      "type": "object",
                                      "required": [
                                        "amount"
                                      ],
                                      "properties": {
                                        "amount": {
                                          "type": "string",
                                          "format": "amount_4_decimal",
                                          "nullable": true
                                        }
                                      }
                                    },
                                    "discount_percent": {
                                      "description": "The discount percentage as a decimal string between \"0\" and \"100\".",
                                      "type": "string",
                                      "format": "discount_percent",
                                      "nullable": true
                                    },
                                    "tax_1": {
                                      "type": "object",
                                      "description": "Product tax details.",
                                      "additionalProperties": false,
                                      "nullable": true,
                                      "required": [
                                        "key",
                                        "value"
                                      ],
                                      "properties": {
                                        "key": {
                                          "type": "string",
                                          "enum": [
                                            "percentage"
                                          ]
                                        },
                                        "value": {
                                          "type": "string",
                                          "format": "tax_percent",
                                          "description": "Represents the tax percentage as a decimal string greater than or equal to 0 and less than or equal to 100."
                                        }
                                      }
                                    }
                                  }
                                },
                                "price_2": {
                                  "description": "An object that holds all price related information for an individual product.",
                                  "type": "object",
                                  "additionalProperties": false,
                                  "nullable": true,
                                  "required": [
                                    "amount",
                                    "base_amount",
                                    "discount_amount",
                                    "discount_percent"
                                  ],
                                  "properties": {
                                    "amount": {
                                      "description": "The price amount after discount.",
                                      "type": "object",
                                      "required": [
                                        "amount"
                                      ],
                                      "properties": {
                                        "amount": {
                                          "type": "string",
                                          "format": "signed_amount_4_decimal",
                                          "nullable": true
                                        }
                                      }
                                    },
                                    "base_amount": {
                                      "description": "The price amount before discount.",
                                      "type": "object",
                                      "required": [
                                        "amount"
                                      ],
                                      "properties": {
                                        "amount": {
                                          "type": "string",
                                          "format": "amount_4_decimal",
                                          "nullable": true
                                        }
                                      }
                                    },
                                    "discount_amount": {
                                      "description": "The absolute discount amount.",
                                      "type": "object",
                                      "required": [
                                        "amount"
                                      ],
                                      "properties": {
                                        "amount": {
                                          "type": "string",
                                          "format": "amount_4_decimal",
                                          "nullable": true
                                        }
                                      }
                                    },
                                    "discount_percent": {
                                      "description": "The discount percentage as a decimal string between \"0\" and \"100\".",
                                      "type": "string",
                                      "format": "discount_percent",
                                      "nullable": true
                                    },
                                    "tax_1": {
                                      "type": "object",
                                      "description": "Product tax details.",
                                      "additionalProperties": false,
                                      "nullable": true,
                                      "required": [
                                        "key",
                                        "value"
                                      ],
                                      "properties": {
                                        "key": {
                                          "type": "string",
                                          "enum": [
                                            "percentage"
                                          ]
                                        },
                                        "value": {
                                          "type": "string",
                                          "format": "tax_percent",
                                          "description": "Represents the tax percentage as a decimal string greater than or equal to 0 and less than or equal to 100."
                                        }
                                      }
                                    }
                                  }
                                },
                                "quantity": {
                                  "description": "The object holds information about the quantity of an individual product. The default quantity type is multiple_choice. If the quantity type is single_choice or multiple_choice, the amount must be set to 0 or 1. If the quantity type is set to single_choice, the amount must be set to 1 at least for one product, and 0 for the rest of the products in the same product group with the quantity type single_choice.",
                                  "type": "object",
                                  "additionalProperties": false,
                                  "properties": {
                                    "amount": {
                                      "description": "The number of individual products selected, or the quantity.",
                                      "minimum": 0,
                                      "maximum": 99999999,
                                      "type": "number",
                                      "nullable": true
                                    },
                                    "type": {
                                      "description": "One of the product's [quantity types](product-group#quantity-type).",
                                      "type": "string",
                                      "default": "quantity",
                                      "enum": [
                                        "single_choice",
                                        "multiple_choice",
                                        "quantity"
                                      ]
                                    }
                                  }
                                }
                              }
                            }
                          }
                        }
                      }
                    },
                    "published_time": {
                      "type": "string",
                      "format": "datetime",
                      "nullable": true
                    },
                    "sign_later": {
                      "description": "A flag to indicate if the contract signing is postponed.",
                      "type": "boolean"
                    },
                    "sign_order": {
                      "type": "array",
                      "description": "Sign order of the participants.",
                      "items": {
                        "type": "object",
                        "additionalProperties": false,
                        "required": [
                          "participant_id",
                          "order"
                        ],
                        "properties": {
                          "participant_id": {
                            "type": "integer",
                            "format": "signed_integer_id",
                            "description": "participant ID"
                          },
                          "order": {
                            "type": "integer",
                            "minimum": 1,
                            "maximum": 1000,
                            "description": "Sign order"
                          }
                        }
                      }
                    },
                    "signing_period_expiry_time": {
                      "type": "string",
                      "format": "datetime",
                      "nullable": true
                    },
                    "state": {
                      "type": "string",
                      "description": "One of the [contract states](contract#contract-state).",
                      "enum": [
                        "draft",
                        "pending",
                        "overdue",
                        "signed",
                        "declined",
                        "unknown"
                      ]
                    },
                    "state_updated_time": {
                      "type": "string",
                      "format": "datetime"
                    },
                    "tags": {
                      "type": "array",
                      "description": "All tags associated with the contract.",
                      "items": {
                        "type": "object",
                        "additionalProperties": false,
                        "required": [
                          "id",
                          "name"
                        ],
                        "properties": {
                          "id": {
                            "type": "integer",
                            "format": "signed_integer_id"
                          },
                          "name": {
                            "type": "string",
                            "minLength": 1
                          }
                        }
                      }
                    },
                    "updated_time": {
                      "type": "string",
                      "format": "datetime",
                      "nullable": true
                    }
                  }
                },
                "examples": {
                  "contractUpdateResponseExample": {
                    "description": "A sample contract with parties and products:",
                    "value": {
                      "_integration_permissions": [],
                      "_links": {
                        "comments": {
                          "href": "https://api.oneflow.com/v1/contracts/10001/comments"
                        },
                        "data_fields": {
                          "href": "https://api.oneflow.com/v1/contracts/10001/data_fields"
                        },
                        "events": {
                          "href": "https://api.oneflow.com/v1/contracts/10001/events"
                        },
                        "files": {
                          "href": "https://api.oneflow.com/v1/contracts/10001/files"
                        },
                        "parties": {
                          "href": "https://api.oneflow.com/v1/contracts/10001/parties"
                        },
                        "publish": {
                          "href": "https://api.oneflow.com/v1/contracts/10001/publish"
                        },
                        "self": {
                          "href": "https://api.oneflow.com/v1/contracts/10001"
                        },
                        "template": {
                          "href": "https://api.oneflow.com/v1/templates/170001"
                        },
                        "template_type": {
                          "href": "https://api.oneflow.com/v1/template_types/220001"
                        },
                        "workspace": {
                          "href": "https://api.oneflow.com/v1/workspaces/130001"
                        }
                      },
                      "_permissions": {
                        "contract:delete": true,
                        "contract:download:pdf": true,
                        "contract:send": true
                      },
                      "_private": {
                        "date_format": "YYYY-MM-DD",
                        "folder": {
                          "id": 380001,
                          "name": "Test folder",
                          "parent_id": null,
                          "path": [
                            380001
                          ]
                        },
                        "language": "en",
                        "name": "My First Contract Update",
                        "signing_period_expiration": {
                          "expire_days_after_publish": 14,
                          "type": "days_after_publish"
                        },
                        "value": {
                          "amount": "500.10",
                          "currency": "SEK"
                        },
                        "workspace_id": 130001
                      },
                      "_private_ownerside": {
                        "created_time": "2023-04-27T11:29:36+00:00",
                        "template_id": 170001,
                        "template_type_id": 220001
                      },
                      "attachment_file_groups": [
                        {
                          "_private_ownerside": {
                            "created_time": "2023-04-27T11:29:36+00:00",
                            "updated_time": "2023-04-27T11:29:36+00:00"
                          },
                          "files": [],
                          "id": 920001,
                          "type": "attachment"
                        }
                      ],
                      "available_options": {
                        "can_receive_attachments": true,
                        "can_receive_expanded_pdf": true,
                        "can_receive_products": true,
                        "delivery_channels": [
                          {
                            "name": "email",
                            "preferred": true,
                            "required_participant_attributes": [
                              "email"
                            ]
                          },
                          {
                            "name": "none",
                            "preferred": false,
                            "required_participant_attributes": []
                          },
                          {
                            "name": "same_device",
                            "preferred": false,
                            "required_participant_attributes": [
                              "sign_method"
                            ]
                          },
                          {
                            "name": "sms",
                            "preferred": false,
                            "required_participant_attributes": [
                              "phone_number"
                            ]
                          }
                        ],
                        "sign_methods": [
                          {
                            "name": "finnish_bankid",
                            "preferred": false
                          },
                          {
                            "name": "sms",
                            "preferred": false
                          },
                          {
                            "name": "standard_esign",
                            "preferred": true
                          },
                          {
                            "name": "swedish_bankid",
                            "preferred": false
                          }
                        ],
                        "two_step_authentication_methods": [
                          {
                            "name": "email",
                            "preferred": false,
                            "required_participant_attributes": [
                              "email"
                            ]
                          },
                          {
                            "name": "none",
                            "preferred": true,
                            "required_participant_attributes": []
                          },
                          {
                            "name": "sms",
                            "preferred": false,
                            "required_participant_attributes": [
                              "phone_number"
                            ]
                          }
                        ]
                      },
                      "data_fields": [
                        {
                          "_private_ownerside": {
                            "created_time": "2023-04-27T11:29:36+00:00",
                            "custom_id": "custom_id_first_name",
                            "updated_time": "2023-04-27T11:29:36+00:00"
                          },
                          "description": "firstname of the person",
                          "id": 140001,
                          "name": "First Name",
                          "placeholder": "firstname placeholder",
                          "value": "Foo"
                        },
                        {
                          "_private_ownerside": {
                            "created_time": "2023-04-27T11:29:36+00:00",
                            "custom_id": "custom_id_last_name",
                            "updated_time": "2023-04-27T11:29:36+00:00"
                          },
                          "description": "lastname of the person",
                          "id": 140002,
                          "name": "Last Name",
                          "placeholder": "lastname placeholder",
                          "value": ""
                        }
                      ],
                      "draft_approval_workflow": null,
                      "id": 10001,
                      "lifecycle_settings": {
                        "duration": "12m",
                        "end_date": null,
                        "initial_duration": null,
                        "notice_period": "3m",
                        "start_date": null,
                        "type": "recurring"
                      },
                      "lifecycle_state": null,
                      "parties": [
                        {
                          "_private_ownerside": {
                            "created_time": "2023-04-27T11:29:36+00:00",
                            "updated_time": "2023-04-27T11:29:36+00:00"
                          },
                          "country_code": "SE",
                          "id": 470001,
                          "identification_number": "11223344-5566",
                          "my_party": true,
                          "name": "Own Company AB",
                          "participants": [
                            {
                              "_permissions": {
                                "contract:update": true
                              },
                              "_private_ownerside": {
                                "created_time": "2023-04-27T11:29:36+00:00",
                                "custom_id": null,
                                "first_visited_time": "2023-04-27T11:29:36+00:00",
                                "last_visited_time": "2023-04-27T11:29:36+00:00",
                                "updated_time": "2023-04-27T11:29:36+00:00",
                                "visits": 1
                              },
                              "delivery_channel": "email",
                              "delivery_status": "success",
                              "draft_approver": false,
                              "email": "own@email.com",
                              "id": 230001,
                              "identification_number": "10034544-0066",
                              "my_participant": true,
                              "name": "First Last",
                              "organizer": false,
                              "pending_approver": false,
                              "phone_number": "+111222333444",
                              "sign_method": "standard_esign",
                              "sign_state": "undecided",
                              "sign_state_updated_time": null,
                              "signatory": true,
                              "title": "Sales Manager",
                              "two_step_authentication_method": "none"
                            }
                          ],
                          "type": "company"
                        },
                        {
                          "_private_ownerside": {
                            "created_time": "2023-04-27T11:29:36+00:00",
                            "updated_time": "2023-04-27T11:29:36+00:00"
                          },
                          "country_code": "SE",
                          "id": 470002,
                          "identification_number": "11223344-5577",
                          "my_party": false,
                          "name": "Company AB",
                          "participants": [
                            {
                              "_permissions": {
                                "contract:update": true
                              },
                              "_private_ownerside": {
                                "created_time": "2023-04-27T11:29:36+00:00",
                                "custom_id": "custom_id_participant_1",
                                "first_visited_time": null,
                                "last_visited_time": null,
                                "updated_time": "2023-04-27T11:29:36+00:00",
                                "visits": 0
                              },
                              "delivery_channel": "email",
                              "delivery_status": "success",
                              "draft_approver": false,
                              "email": "mem@email.com",
                              "id": 230002,
                              "identification_number": "10034544-0077",
                              "my_participant": false,
                              "name": "Firstname Lastname",
                              "organizer": false,
                              "pending_approver": false,
                              "phone_number": "+111222333555",
                              "sign_method": "standard_esign",
                              "sign_state": "undecided",
                              "sign_state_updated_time": null,
                              "signatory": true,
                              "title": "",
                              "two_step_authentication_method": "email"
                            }
                          ],
                          "type": "company"
                        },
                        {
                          "_private_ownerside": {
                            "created_time": "2023-04-27T11:29:36+00:00",
                            "updated_time": "2023-04-27T11:29:36+00:00"
                          },
                          "country_code": "SE",
                          "id": 470003,
                          "identification_number": "10034544-0088",
                          "my_party": false,
                          "name": "Firstname2 Lastname2",
                          "participant": {
                            "_permissions": {
                              "contract:update": true
                            },
                            "_private_ownerside": {
                              "created_time": "2023-04-27T11:29:36+00:00",
                              "custom_id": null,
                              "first_visited_time": null,
                              "last_visited_time": null,
                              "updated_time": "2023-04-27T11:29:36+00:00",
                              "visits": 0
                            },
                            "delivery_channel": "email",
                            "delivery_status": "success",
                            "draft_approver": false,
                            "email": "individual@email.com",
                            "id": 230003,
                            "identification_number": "10034544-0088",
                            "my_participant": false,
                            "name": "Firstname2 Lastname2",
                            "organizer": false,
                            "pending_approver": false,
                            "phone_number": "+111222333666",
                            "sign_method": "standard_esign",
                            "sign_state": "undecided",
                            "sign_state_updated_time": null,
                            "signatory": true,
                            "title": "",
                            "two_step_authentication_method": "email"
                          },
                          "type": "individual"
                        }
                      ],
                      "pdf_file_groups": [
                        {
                          "_private_ownerside": {
                            "created_time": "2023-04-27T11:29:36+00:00",
                            "updated_time": "2023-04-27T11:29:36+00:00"
                          },
                          "files": [],
                          "id": 920002,
                          "type": "pdf"
                        }
                      ],
                      "pending_approval_workflow": null,
                      "product_groups": [
                        {
                          "_private_ownerside": {
                            "created_time": "2023-04-27T11:29:36+00:00",
                            "custom_id": "custom_id_product_group_1",
                            "updated_time": "2023-04-27T11:29:36+00:00"
                          },
                          "configuration": {
                            "columns": [
                              {
                                "enabled": true,
                                "key": "name",
                                "label": "ProductX"
                              },
                              {
                                "enabled": true,
                                "key": "description",
                                "label": "Description"
                              },
                              {
                                "enabled": true,
                                "key": "price_1",
                                "label": "Price 1"
                              },
                              {
                                "enabled": true,
                                "key": "price_2",
                                "label": "Price 2"
                              },
                              {
                                "enabled": true,
                                "key": "count",
                                "label": "ValueX"
                              }
                            ],
                            "counterpart_edit": false,
                            "hide_price_summation": false,
                            "name": {
                              "enabled": false,
                              "label": "Example Product Group Name"
                            },
                            "price_affixes": {
                              "postfix": "",
                              "prefix": "Rs"
                            },
                            "price_precision": 2,
                            "quantity_precision": 0
                          },
                          "enabled_columns": [
                            {
                              "enabled": true,
                              "key": "name"
                            },
                            {
                              "enabled": true,
                              "key": "description"
                            },
                            {
                              "enabled": true,
                              "key": "price_1"
                            },
                            {
                              "enabled": true,
                              "key": "price_2"
                            },
                            {
                              "enabled": true,
                              "key": "count"
                            }
                          ],
                          "id": 85011,
                          "products": [
                            {
                              "_private_ownerside": {
                                "created_time": "2023-04-27T11:29:36+00:00",
                                "custom_id": "CUSTOM_ID_PRODUCT_1",
                                "updated_time": "2023-04-27T11:29:36+00:00"
                              },
                              "counterparty_lock": false,
                              "description": "shiny shoes for sunny saunters",
                              "id": 150011,
                              "name": "shoes",
                              "price_1": {
                                "amount": {
                                  "amount": "90.00"
                                },
                                "base_amount": {
                                  "amount": "100.00"
                                },
                                "discount_amount": {
                                  "amount": "0.00"
                                },
                                "discount_percent": "10.000"
                              },
                              "price_2": {
                                "amount": {
                                  "amount": "0.00"
                                },
                                "base_amount": {
                                  "amount": "0.00"
                                },
                                "discount_amount": {
                                  "amount": "0.00"
                                },
                                "discount_percent": "0.000"
                              },
                              "quantity": {
                                "amount": 1,
                                "type": "multiple_choice"
                              }
                            }
                          ]
                        }
                      ],
                      "published_time": null,
                      "sign_later": false,
                      "sign_order": [
                        {
                          "order": 1,
                          "participant_id": 230001
                        },
                        {
                          "order": 2,
                          "participant_id": 230002
                        },
                        {
                          "order": 3,
                          "participant_id": 230003
                        }
                      ],
                      "signing_period_expiry_time": null,
                      "state": "draft",
                      "state_updated_time": "2023-04-27T11:29:36+00:00",
                      "tags": [
                        {
                          "id": 380001,
                          "name": "tag one"
                        },
                        {
                          "id": 380002,
                          "name": "tag two"
                        }
                      ],
                      "updated_time": "2023-04-27T18:20:00+00:00"
                    }
                  }
                }
              }
            }
          },
          "400": {
            "description": "Invalid format or content of the request."
          },
          "401": {
            "description": "The API token or the user email is invalid."
          },
          "403": {
            "description": "The request is not authorized by the server."
          },
          "404": {
            "description": "A required entity is missing."
          },
          "409": {
            "description": "A conflict occurred with the current state of the target resource."
          }
        },
        "tags": [
          "Contract"
        ]
      }
    }
  }
}
```