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
}