Contract

Extract parties, dates, terms, and governing law.

Schema Key

contract

Usage

Use this template when creating a schema via the API or SDK:

const schema = await client.schemas.create('my-workspace', {
  schemaKey: 'contract',
  name: 'Contract',
  definition: { /* see definition below */ },
});

Definition

{
  "type": "object",
  "properties": {
    "title": {
      "type": "string",
      "description": "Title or name of the contract."
    },
    "contract_number": {
      "type": "string",
      "description": "Contract reference number or identifier."
    },
    "parties": {
      "type": "array",
      "description": "List of parties involved in the contract.",
      "items": {
        "type": "object",
        "properties": {
          "name": {
            "type": "string",
            "description": "Legal name of the party."
          },
          "role": {
            "type": "string",
            "description": "Role in the contract (e.g. Client, Contractor, Licensor)."
          },
          "address": {
            "type": "object",
            "description": "Address of the party.",
            "properties": {
              "street": {
                "type": "string",
                "description": "Street address."
              },
              "city": {
                "type": "string",
                "description": "City."
              },
              "country": {
                "type": "string",
                "description": "Country."
              }
            },
            "required": [
              "city",
              "country"
            ],
            "additionalProperties": false
          },
          "representative": {
            "type": "string",
            "description": "Name of the signing representative."
          }
        },
        "required": [
          "name",
          "role"
        ],
        "additionalProperties": false
      }
    },
    "effective_date": {
      "type": "object",
      "description": "Date the contract takes effect.",
      "properties": {
        "year": {
          "type": "integer",
          "description": "Year (e.g. 2024)."
        },
        "month": {
          "type": "integer",
          "description": "Month (1-12).",
          "minimum": 1,
          "maximum": 12
        },
        "day": {
          "type": "integer",
          "description": "Day of the month.",
          "minimum": 1,
          "maximum": 31
        }
      },
      "required": [
        "year",
        "month",
        "day"
      ],
      "additionalProperties": false
    },
    "expiration_date": {
      "type": "object",
      "description": "Date the contract expires, if applicable.",
      "properties": {
        "year": {
          "type": "integer",
          "description": "Year (e.g. 2025)."
        },
        "month": {
          "type": "integer",
          "description": "Month (1-12).",
          "minimum": 1,
          "maximum": 12
        },
        "day": {
          "type": "integer",
          "description": "Day of the month.",
          "minimum": 1,
          "maximum": 31
        }
      },
      "required": [
        "year",
        "month",
        "day"
      ],
      "additionalProperties": false
    },
    "terms": {
      "type": "string",
      "description": "Summary of the key terms and conditions."
    },
    "payment_terms": {
      "type": "object",
      "description": "Payment-related terms.",
      "properties": {
        "amount": {
          "type": "number",
          "description": "Payment amount."
        },
        "currency": {
          "type": "string",
          "description": "Currency code (e.g. USD, EUR)."
        },
        "schedule": {
          "type": "string",
          "description": "Payment schedule or frequency (e.g. Monthly, On delivery)."
        }
      },
      "required": [
        "amount",
        "currency"
      ],
      "additionalProperties": false
    },
    "governing_law": {
      "type": "string",
      "description": "Jurisdiction or governing law (e.g. State of California)."
    },
    "termination_clause": {
      "type": "string",
      "description": "Summary of termination conditions."
    }
  },
  "required": [
    "title",
    "parties",
    "effective_date",
    "terms",
    "governing_law"
  ],
  "additionalProperties": false
}