{
"error": "Entity Not Found",
"errorCode": "EntityNotFound",
"message": "This entity is not found in the system.",
"status": "404 NOT_FOUND",
"timestamp": "2026-09-02T20:41:03.118Z",
"localizedMessage": "This entity is not found in the system."
}
Leases
GET Lease
Returns a single Lease by id.
Required capabilities:READ:LEASE
GET
/
rest
/
v2
/
accounts
/
{accountId}
/
leases
/
{leaseId}
GET Lease
curl --request GET \ --url https://api.prophia.com/rest/v2/accounts/{accountId}/leases/{leaseId} \ --header 'X-API-Key: <api-key>'
{
"error": "Entity Not Found",
"errorCode": "EntityNotFound",
"message": "This entity is not found in the system.",
"status": "404 NOT_FOUND",
"timestamp": "2026-09-02T20:41:03.118Z",
"localizedMessage": "This entity is not found in the system."
}
Authorizations
X-API-Key
string
header
required
Prophia API key — either an account key (grants admin level permissions) or a user key with the REST scope. Send it in the X-API-Key header, or equivalently as Authorization: Bearer <api-key>. JWTs are rejected on /rest endpoints with 401.
Path Parameters
accountId
string
required
leaseId
string
required
Query Parameters
include
enum<string>[]
Optional collections to populate. Note: combining tags and documents on a heavily-tagged lease can produce a very large response — prefer requesting one at a time. Unknown keys are rejected with 400.
tags — adds the consolidated DocTag list extracted from this lease's documents (rent, options, dates, etc.).
Requires the READ:TAG capability.
documents — adds per-document page geometry keyed by leaseDocId, for resolving tagSelections[].docPageId references.
Requires the READ:DOCUMENT capability.
subleases — adds the list of subleases of this lease as lightweight refs (id, url, current leaseStatus and leaseSubStatus); empty when the lease has no subleases.
Available options:
tags,
documents,
subleases
Response
OK
Representation of a single Lease. A Lease is directly associated with one Building, denoted by its buildingId reference. A Lease's current active residence can be in one or more Buildings, which may or may not be its original Building reference - inspect the suiteNumber field to understand which BuildingSpaces in which Buildings the Lease is currently active in.
id
string
read-only
Prophia internal Lease ID (UUID).
accountId
string
read-only
The Account the Lease is associated with.
propertyId
string
read-only
The propertyId (UUID) of Property the Lease was uploaded to; usually the property the Lease was initially occupying suites inside of.
propertyCustomId
string
read-only
The property's custom external identifier, for cross-referencing with your own systems. This value is purely for external reference and is unused in Prophia's system.
propertyName
string
read-only
The name of the Property the Lease was uploaded to.
buildingId
string
read-only
The buildingId (UUID) of the Building the Lease was uploaded to.
buildingCustomId
string
read-only
The building's custom external identifier, for cross-referencing with your own systems. This value is purely for external reference only and it unused in Prophia's system.
buildingName
string
read-only
The name of the Building the Lease was uploaded to.
buildingType
enum<string>
read-only
Asset type of the lease's building.
Available options:
OFFICE,
INDUSTRIAL,
RETAIL,
MIXED_USE,
OTHER,
LIFE_SCIENCES,
MEDICAL_OFFICE,
FLEX
address
object
read-only
Address of the Building the Lease was uploaded to.
Show child attributes
tenantLegalName
string
read-only
Tenant's legal entity name sourced from the Lease data. Use dba for the display name.
dba
string
Tenant's doing-business-as name — the display name used throughout the app.
customId
string
Your custom external identifier for the lease, for cross-referencing with your own systems. This value is purely for external reference and is unused in Prophia's system.
url
string
read-only
Deep link to this Lease in the Prophia web app.
leaseStatus
string
read-only
Headline lease state as shown in the app. On this endpoint it is one of Active, Expired, or Not Started — note the spacing and casing — but it is typed as a free-form string rather than an enum, because the same field name carries a wider set on the v0 API, so do not switch on it exhaustively. It is derived, not stored: Prophia recomputes it from the lease's commence and expiration dates against today, so it changes on its own as those dates pass. Pair with leaseSubStatus to tell an expired lease from one running month-to-month or one that has been vacated post-expiration.
leaseType
enum<string>
Classification of the agreement. Some lease types have specialized Tag sets available to them: GSA_OFFICE and RETAIL leases each have unique Tags available for capture that other lease types do not. Changing a lease's type removes those specialized Tags from the UI, APIs, and Reports, but does not delete them — reverting to the matching type brings them back.
Available options:
OFFICE,
GSA_OFFICE,
RETAIL,
INDUSTRIAL,
STORAGE,
LICENSE_AGREEMENT,
TELECOM_ANTENNA,
PARKING_AGREEMENT,
ROOFTOP_SOLAR
leasedFloors
string
read-only
Floors the lease occupies, as a comma-separated string. Derived rather than captured: each suite in suiteNumber is matched to a building space and contributes that space's floor, plus any floor named directly on a floor-scoped space. A suite that matches no building space contributes nothing, and a floor in another building is suffixed with @buildingId the way cross-building suites are. The order is not stable, and the value is rebuilt when Prophia consolidates the lease's tags — editing a space's floor afterwards leaves this stale until the next consolidation.
suiteNumber
object[]
read-only
Suites this lease occupies. May include references to Buildings that are not the Lease's direct ancestor when the Lease spans multiple Buildings or has relocated into a new Building in its lifetime.
Show child attributes
squareFootage
integer<int32>
read-only
Leased square footage.
commenceDate
string<date-time>
read-only
Lease commencement, as a calendar date (yyyy-MM-dd) with no time zone. See floatingCommencement when the date is not yet anchored.
expirationDate
string<date-time>
read-only
Lease expiration, as a calendar date (yyyy-MM-dd) with no time zone.
tags
object[]
The lease's extracted terms; only populated when include=tags is present in the request parameters. Filtered based the lease's current leaseType. Each tag appears once. A tag's applicableSpaces lists the suites it applies to in the lease's consolidated per-space view (a space-dependent term captured without suites applies to every space) and is omitted for space-independent terms. Lease-level values (commencement, expiration, square footage, suites) are on the lease's top-level fields.
Show child attributes
documents
object
read-only
Per-document page geometry keyed by leaseDocId, for resolving tag citations; only populated when include=documents is present in the request parameters.
Show child attributes
leaseScore
object
read-only
Prophia's computed Lease complexity score. Takes into account number and type of documents, tag data changes over time, and more.
Show child attributes
parent
object
read-only
Parent Lease, present only if this Lease is a sublease.
Show child attributes
leaseSubStatus
object
read-only
Refines leaseStatus with the lease's current ongoing state (month-to-month, year-to-year, holdover) or post-expiration transition (vacated, extended). Omitted when none applies.
Show child attributes
docCompletionStatus
string
read-only
Doc-completion rollup for the lease summary; complete when all Documents in the Lease have documentStatus=complete, otherwise incomplete.
rentType
enum<string>
read-only
Top-level rent classification for the lease (e.g. NNN, Gross). See opexTaxTypes for per-space classifications, which fall back to this value.
Available options:
Gross,
Modified Gross,
Single Net,
NNN,
Net of E,
NN,
Net,
Unknown
opexTaxTypes
object[]
read-only
Per-occupied-space operating-expense / tax type, falling back to rentType when no per-space mapping exists.
Show child attributes
floatingCommencement
boolean
read-only
True when the lease's commencement date is floating (not anchored to a fixed calendar date).
autoRenewalExpirationDates
object[]
read-only
Per-space future expiration dates from auto-renewal options; excludes each space's pre-auto-renewal (original) expiration.
Show child attributes
subleases
object[]
read-only
Subleases under this Lease, only populated when the include=subleases is present in the request parameters.
Show child attributes
{"docsConfig":{"theme":"mint","$schema":"https://mintlify.com/docs.json","name":"Prophia Docs","colors":{"primary":"#017768","light":"#027F9E","dark":"#004356"},"logo":{"light":"https://mintcdn.com/prophia/D5w3N4ZrYouJq2j1/images/ProphiaBrand_Primary-Logo-ForDarkBG-TealAccent.png?fit=max\u0026auto=format\u0026n=D5w3N4ZrYouJq2j1\u0026q=85\u0026s=dc3bd897dc4e1f0320f0ee18d0bab7bb","dark":"https://mintcdn.com/prophia/D5w3N4ZrYouJq2j1/images/ProphiaBrand_Primary-Logo-ForLightBG-TealAccent.png?fit=max\u0026auto=format\u0026n=D5w3N4ZrYouJq2j1\u0026q=85\u0026s=58a7fdb3deaa004ccf6c4fff99f0c6b8"},"favicon":{"light":"https://mintcdn.com/prophia/U5C5v85ATT-0BVl7/favicon.svg?fit=max\u0026auto=format\u0026n=U5C5v85ATT-0BVl7\u0026q=85\u0026s=7eacea87495b242cb66ef5e6a54ae9c8","dark":"https://mintcdn.com/prophia/U5C5v85ATT-0BVl7/favicon.svg?fit=max\u0026auto=format\u0026n=U5C5v85ATT-0BVl7\u0026q=85\u0026s=7eacea87495b242cb66ef5e6a54ae9c8"},"api":{"playground":{"display":"interactive","proxy":false}},"navbar":{"links":[{"href":"https://app.prophia.com","label":"Sign in"}]},"footer":{"socials":{"website":"https://www.prophia.com"}},"seo":{"metatags":{"canonical":"https://docs.prophia.com"}},"integrations":{"posthog":{"apiKey":"phc_wyQtcLzAHp5CtWuHBKYYXigMWz5pva9HXfUig7T3VmSp","sessionRecording":false}},"contextual":{"options":["copy","view","mcp","add-mcp","cursor","vscode","claude","chatgpt"],"display":"header"},"styling":{"latex":false},"navigation":{"pages":[]}},"deployment":{"deploymentMetadataValue":{"subdomain":"prophia","hasAudioNarration":false,"actualSubdomain":"prophia","customDomains":["docs.prophia.com"],"gitSource":{"type":"github","owner":"prophia-inc","repo":"prophia-docs","deployBranch":"main","contentDirectory":"","isPrivate":true,"mountPath":"","label":""},"entitlements":{"AI_CHAT":{"status":"DISABLED"}},"buildId":"6aebdb9191d076e88422a4a3","clientVersion":"0.0.4143","searchFilterCounts":[{"language":"default","tag":"API Reference","count":70},{"language":"default","tag":"Endpoints","count":55},{"language":"default","tag":"Custom Fields","count":12},{"language":"default","tag":"Developers","count":10},{"language":"default","tag":"Data Concepts","count":7},{"language":"default","tag":"Leases","count":7},{"language":"default","tag":"Properties","count":7},{"language":"default","tag":"Prophia MCP Server","count":6},{"language":"default","tag":"Buildings","count":6},{"language":"default","tag":"Documents","count":6}],"searchSettings":{"maxResults":10}},"assistantConfig":{"enableAskAiButton":false,"enableStarterQuestions":false,"enableContextualStarterQuestions":false,"enableAskAiSearchBar":true},"basePath":"","hasChatPermissions":false,"hasWebMcpPermissions":false,"toggles":[{"name":"kill-isr","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"custom-rbac-roles","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"agent-mintlify-slack","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"agent-integrations-settings","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"rbac-expansion","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"automations-pr-grouping","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"custom-prefix","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"analytics-v7","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"user-flows-analytics","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"no-publish-flow","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-onboarding","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"snapshot-serving-live","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"stripTemperatureMiddleware","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"support-platform-pylon-zendesk","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"snapshot-serving","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"instant-rollback","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"granular-notifications-server","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"granular-notifications","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"automations-fable","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"fixed-ai-action-pricing","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"automation-resolve-merge-conflict","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"scoped-publishing","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"mintql","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"page-level-analytics","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"editor-version-history-v2","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"billing-page-v2","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"full-page-search","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workspace-projects","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"assistant-v5","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"fork-pr-previews","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"revalidation-jwt","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-sso-scim","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"hobby-abuse-scan","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"dashboard-inbox","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-signup","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"turbopuffer-dual-write","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-enabled","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"approve-review-flow","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"editor-metadata","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"sso-setup-deadline-banner","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"turbopuffer-serve","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"live-agents","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"llms-txt-v2","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false}],"googleFontsInlined":false},"customCss":[{"filePath":"style.css","content":".tag-tables table{min-width:72rem}.tag-tables table :is(th,td):nth-child(1){min-width:17rem}.tag-tables table :is(th,td):nth-child(2){min-width:11rem}.tag-tables table :is(th,td):nth-child(3){min-width:7rem;white-space:nowrap}.tag-tables table :is(th,td):nth-child(4){min-width:14rem}.tag-tables table :is(th,td):nth-child(5){min-width:20rem}.tag-tables table :is(th,td):nth-child(6){min-width:6rem;white-space:nowrap}.tag-tables table :is(th,td):nth-child(7){min-width:10rem}"}],"page":{"pagePath":"api-reference/v2/leases/get-lease","slug":"/api-reference/v2/leases/get-lease","pageMetadata":{"title":"GET Lease","description":"Returns a single Lease by id.\n\n**Required capabilities:** `READ:LEASE`","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json get /rest/v2/accounts/{accountId}/leases/{leaseId}","href":"/api-reference/v2/leases/get-lease","autogeneratedByOpenApi":true},"description":{"compiledSource":"\"use strict\";\nconst {Fragment: _Fragment, jsx: _jsx, jsxs: _jsxs} = arguments[0];\nconst {useMDXComponents: _provideComponents} = arguments[0];\nfunction _createMdxContent(props) {\n const _components = {\n code: \"code\",\n p: \"p\",\n strong: \"strong\",\n ..._provideComponents(),\n ...props.components\n };\n return _jsxs(_Fragment, {\n children: [_jsx(_components.p, {\n children: \"Returns a single Lease by id.\"\n }), \"\\n\", _jsxs(_components.p, {\n children: [_jsx(_components.strong, {\n children: \"Required capabilities:\"\n }), \" \", _jsx(_components.code, {\n children: \"READ:LEASE\"\n })]\n })]\n });\n}\nfunction MDXContent(props = {}) {\n const {wrapper: MDXLayout} = {\n ..._provideComponents(),\n ...props.components\n };\n return MDXLayout ? _jsx(MDXLayout, {\n ...props,\n children: _jsx(_createMdxContent, {\n ...props\n })\n }) : _createMdxContent(props);\n}\nreturn {\n default: MDXContent\n};\n","frontmatter":{},"scope":{}},"pageType":"default","mdx":{"mdxSource":{"compiledSource":"\"use strict\";const{Fragment:_Fragment,jsx:_jsx}=arguments[0];const{useMDXComponents:_provideComponents}=arguments[0];function _createMdxContent(props){return _jsx(_Fragment,{})}function MDXContent(props={}){const{wrapper:MDXLayout}={..._provideComponents(),...props.components};return MDXLayout?_jsx(MDXLayout,{...props,children:_jsx(_createMdxContent,{...props})}):_createMdxContent(props)}return{default:MDXContent}","frontmatter":{},"scope":{"config":{},"pageMetadata":{"title":"GET Lease","description":"Returns a single Lease by id.\n\n**Required capabilities:** `READ:LEASE`","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json get /rest/v2/accounts/{accountId}/leases/{leaseId}","href":"/api-reference/v2/leases/get-lease","autogeneratedByOpenApi":true}}},"mdxSourceWithNoJs":null},"mdxExtracts":{"tableOfContents":[],"codeExamples":{}},"jsLinks":[],"openApiReferenceData":{"operation":{"tags":["Leases"],"summary":"GET Lease","description":"Returns a single Lease by id.\n\n**Required capabilities:** `READ:LEASE`","operationId":"getLease","parameters":["5da5164e-4bfe-4892-8cd9-d48741df2cbf","a0f57e7d-b7ce-4f04-bbb8-8425982768e1","b52ba6d7-ec9c-4bc1-9e75-2c04e540fd31"],"responses":{"200":"65611cdb-1266-4d43-a6c4-5aedcbdf57ca","400":"c0322d7e-c8fa-4c6d-9355-998c11635fba","401":"2b5e7126-2b2a-4486-b2c1-c9382f1fd5b1","403":"29f02358-85a8-4d04-bff0-e0fcfa595851","404":"6b3c06f7-3e4a-41fe-8822-99203f562518"},"method":"get","type":"path","servers":["ac2c6829-ec34-4f73-950d-564389c250a7"],"security":["a4b573e8-9e27-4cda-bbfc-fe4bf588b6a5"],"path":"/rest/v2/accounts/{accountId}/leases/{leaseId}","baseUrlOptions":["https://api.prophia.com"],"title":"GET Lease","codeSamples":[],"requiredOnlyExamples":false,"requestExampleType":"generated","responseExampleType":"generated","disableProxy":true},"dependencies":{"parameters":{"5da5164e-4bfe-4892-8cd9-d48741df2cbf":{"name":"accountId","in":"path","required":true,"schema":{"type":"string","isRequired":true,"uniqueKey":"","typeLabel":"string"}},"a0f57e7d-b7ce-4f04-bbb8-8425982768e1":{"name":"leaseId","in":"path","required":true,"schema":{"type":"string","isRequired":true,"uniqueKey":"","typeLabel":"string"}},"b52ba6d7-ec9c-4bc1-9e75-2c04e540fd31":{"name":"include","in":"query","description":"Optional collections to populate. Note: combining `tags` and `documents` on a heavily-tagged lease can produce a very large response — prefer requesting one at a time. Unknown keys are rejected with 400.\n\n- `tags` — adds the consolidated DocTag list extracted from this lease's documents (rent, options, dates, etc.).\n - Requires the `READ:TAG` capability.\n- `documents` — adds per-document page geometry keyed by leaseDocId, for resolving `tagSelections[].docPageId` references.\n - Requires the `READ:DOCUMENT` capability.\n- `subleases` — adds the list of subleases of this lease as lightweight refs (id, url, current leaseStatus and leaseSubStatus); empty when the lease has no subleases.","required":false,"schema":{"type":"array","items":{"type":"string","enum":["tags","documents","subleases"],"uniqueKey":"items.[INDEX]","typeLabel":"enum\u003cstring>"},"isRequired":false,"description":"Optional collections to populate. Note: combining `tags` and `documents` on a heavily-tagged lease can produce a very large response — prefer requesting one at a time. Unknown keys are rejected with 400.\n\n- `tags` — adds the consolidated DocTag list extracted from this lease's documents (rent, options, dates, etc.).\n - Requires the `READ:TAG` capability.\n- `documents` — adds per-document page geometry keyed by leaseDocId, for resolving `tagSelections[].docPageId` references.\n - Requires the `READ:DOCUMENT` capability.\n- `subleases` — adds the list of subleases of this lease as lightweight refs (id, url, current leaseStatus and leaseSubStatus); empty when the lease has no subleases.","uniqueKey":"","typeLabel":"enum\u003cstring>[]"}}},"responses":{"65611cdb-1266-4d43-a6c4-5aedcbdf57ca":{"description":"OK","content":{"*/*":{"schema":{"type":"object","description":"Representation of a single Lease. A Lease is directly associated with one Building, denoted by its `buildingId` reference. A Lease's current active residence can be in one or more Buildings, which may or may not be its original Building reference - inspect the `suiteNumber` field to understand which BuildingSpaces in which Buildings the Lease is currently active in.","properties":{"id":{"type":"string","description":"Prophia internal Lease ID (UUID).","readOnly":true,"uniqueKey":"id","typeLabel":"string"},"accountId":{"type":"string","description":"The Account the Lease is associated with.","readOnly":true,"uniqueKey":"accountId","typeLabel":"string"},"propertyId":{"type":"string","description":"The propertyId (UUID) of Property the Lease was uploaded to; usually the property the Lease was initially occupying suites inside of.","readOnly":true,"uniqueKey":"propertyId","typeLabel":"string"},"propertyCustomId":{"type":"string","description":"The property's custom external identifier, for cross-referencing with your own systems. This value is purely for external reference and is unused in Prophia's system.","readOnly":true,"uniqueKey":"propertyCustomId","typeLabel":"string"},"propertyName":{"type":"string","description":"The name of the Property the Lease was uploaded to.","readOnly":true,"uniqueKey":"propertyName","typeLabel":"string"},"buildingId":{"type":"string","description":"The buildingId (UUID) of the Building the Lease was uploaded to.","readOnly":true,"uniqueKey":"buildingId","typeLabel":"string"},"buildingCustomId":{"type":"string","description":"The building's custom external identifier, for cross-referencing with your own systems. This value is purely for external reference only and it unused in Prophia's system.","readOnly":true,"uniqueKey":"buildingCustomId","typeLabel":"string"},"buildingName":{"type":"string","description":"The name of the Building the Lease was uploaded to.","readOnly":true,"uniqueKey":"buildingName","typeLabel":"string"},"buildingType":{"type":"string","description":"Asset type of the lease's building.","enum":["OFFICE","INDUSTRIAL","RETAIL","MIXED_USE","OTHER","LIFE_SCIENCES","MEDICAL_OFFICE","FLEX"],"readOnly":true,"uniqueKey":"buildingType","typeLabel":"enum\u003cstring>"},"address":{"type":"object","properties":{"address1":{"type":"string","uniqueKey":"address.address1","typeLabel":"string"},"address2":{"type":"string","uniqueKey":"address.address2","typeLabel":"string"},"city":{"type":"string","uniqueKey":"address.city","typeLabel":"string"},"state":{"type":"string","uniqueKey":"address.state","typeLabel":"string"},"country":{"type":"string","uniqueKey":"address.country","typeLabel":"string"},"zipcode":{"type":"string","uniqueKey":"address.zipcode","typeLabel":"string"}},"description":"Address of the Building the Lease was uploaded to.","readOnly":true,"uniqueKey":"address","typeLabel":"object"},"tenantLegalName":{"type":"string","description":"Tenant's legal entity name sourced from the Lease data. Use `dba` for the display name.","readOnly":true,"uniqueKey":"tenantLegalName","typeLabel":"string"},"dba":{"type":"string","description":"Tenant's doing-business-as name — the display name used throughout the app.","uniqueKey":"dba","typeLabel":"string"},"customId":{"type":"string","description":"Your custom external identifier for the lease, for cross-referencing with your own systems. This value is purely for external reference and is unused in Prophia's system.","uniqueKey":"customId","typeLabel":"string"},"url":{"type":"string","description":"Deep link to this Lease in the Prophia web app.","readOnly":true,"uniqueKey":"url","typeLabel":"string"},"leaseStatus":{"type":"string","description":"Headline lease state as shown in the app. On this endpoint it is one of `Active`, `Expired`, or `Not Started` — note the spacing and casing — but it is typed as a free-form string rather than an enum, because the same field name carries a wider set on the v0 API, so do not switch on it exhaustively. It is derived, not stored: Prophia recomputes it from the lease's commence and expiration dates against today, so it changes on its own as those dates pass. Pair with `leaseSubStatus` to tell an expired lease from one running month-to-month or one that has been vacated post-expiration.","readOnly":true,"uniqueKey":"leaseStatus","typeLabel":"string"},"leaseType":{"type":"string","description":"Classification of the agreement. Some lease types have specialized Tag sets available to them: GSA_OFFICE and RETAIL leases each have unique Tags available for capture that other lease types do not. Changing a lease's type removes those specialized Tags from the UI, APIs, and Reports, but does not delete them — reverting to the matching type brings them back.","enum":["OFFICE","GSA_OFFICE","RETAIL","INDUSTRIAL","STORAGE","LICENSE_AGREEMENT","TELECOM_ANTENNA","PARKING_AGREEMENT","ROOFTOP_SOLAR"],"uniqueKey":"leaseType","typeLabel":"enum\u003cstring>"},"leasedFloors":{"type":"string","description":"Floors the lease occupies, as a comma-separated string. Derived rather than captured: each suite in `suiteNumber` is matched to a building space and contributes that space's `floor`, plus any floor named directly on a floor-scoped space. A suite that matches no building space contributes nothing, and a floor in another building is suffixed with `@buildingId` the way cross-building suites are. The order is not stable, and the value is rebuilt when Prophia consolidates the lease's tags — editing a space's `floor` afterwards leaves this stale until the next consolidation.","readOnly":true,"uniqueKey":"leasedFloors","typeLabel":"string"},"suiteNumber":{"type":"array","description":"Suites this lease occupies. May include references to Buildings that are not the Lease's direct ancestor when the Lease spans multiple Buildings or has relocated into a new Building in its lifetime.","items":{"type":"object","description":"Reference to space in a Building: one Building Space suiteNumber, an entire floor, the entire Building, or all spaces. `scope` says which of those it is, and `name` carries the label — for `BUILDING` and `ALL` that label is the sentinel `Entire building` or `All spaces` rather than the name of a real Building Space. The `ALL` scope means all suites in the relevant context are referenced: a Tag with `scope: ALL` refers to every suite defined in the suiteNumber tag belonging to that Document or Lease.","properties":{"name":{"type":"string","description":"The space's display name: a suite name that matches `BuildingSpace.suiteNumber` by string (scope SUITE), a floor designation (scope FLOOR), or the sentinels `Entire building` / `All spaces`.","uniqueKey":"suiteNumber.items.[INDEX].name","typeLabel":"string"},"buildingId":{"type":"string","description":"Building this entry refers to. Can differ from the parent lease's own Building when a lease spans multiple buildings or has relocated.","uniqueKey":"suiteNumber.items.[INDEX].buildingId","typeLabel":"string"},"scope":{"type":"string","description":"Granularity of the reference: SUITE (one suite), FLOOR (a whole floor), BUILDING (the entire building), or ALL (all spaces).","enum":["BUILDING","FLOOR","SUITE","ALL"],"uniqueKey":"suiteNumber.items.[INDEX].scope","typeLabel":"enum\u003cstring>"}},"uniqueKey":"suiteNumber.items.[INDEX]","typeLabel":"object"},"readOnly":true,"uniqueKey":"suiteNumber","typeLabel":"object[]"},"squareFootage":{"type":"integer","format":"int32","description":"Leased square footage.","readOnly":true,"uniqueKey":"squareFootage","typeLabel":"integer\u003cint32>"},"commenceDate":{"type":"string","format":"date-time","description":"Lease commencement, as a calendar date (yyyy-MM-dd) with no time zone. See `floatingCommencement` when the date is not yet anchored.","readOnly":true,"uniqueKey":"commenceDate","typeLabel":"string\u003cdate-time>"},"expirationDate":{"type":"string","format":"date-time","description":"Lease expiration, as a calendar date (yyyy-MM-dd) with no time zone.","readOnly":true,"uniqueKey":"expirationDate","typeLabel":"string\u003cdate-time>"},"tags":{"type":"array","description":"The lease's extracted terms; only populated when `include=tags` is present in the request parameters. Filtered based the lease's current `leaseType`. Each tag appears once. A tag's `applicableSpaces` lists the suites it applies to in the lease's consolidated per-space view (a space-dependent term captured without suites applies to every space) and is omitted for space-independent terms. Lease-level values (commencement, expiration, square footage, suites) are on the lease's top-level fields.","items":{"type":"object","description":"V2DocTagModel as embedded in a parent response. This position omits tagSelections, pages, applicableSpaces. The `include` parameter is one level deep, so they are never populated in this position — fetch the resource directly to request them.","properties":{"id":{"type":"string","description":"Prophia internal Tag ID (UUID).","readOnly":true,"uniqueKey":"tags.items.[INDEX].id","typeLabel":"string"},"tagName":{"type":"string","description":"Machine name of the term (e.g. `rentSchedule`, `securityDeposit`). Tag names may occasionally appear in the format `optionName.componentTagName` denoting that the component tag belongs to a family of tags associated with that option name (e.g. autoRenewal.autoRenewalRate).","uniqueKey":"tags.items.[INDEX].tagName","typeLabel":"string"},"displayName":{"type":"string","description":"Human-readable term name as shown in the Prophia app.","uniqueKey":"tags.items.[INDEX].displayName","typeLabel":"string"},"isCustomTag":{"type":"boolean","description":"True when this tag instantiates one of the account's custom term definitions.","uniqueKey":"tags.items.[INDEX].isCustomTag","typeLabel":"boolean"},"category":{"type":"string","description":"STANDARD: a single captured value — the `value` and `schedule` fields are the most common places to find relevant data for standard type Tags. COMPLEX: an option or right — the `tagComponents` field will contain data related to the component family related to the parent option Tag. EXHIBIT: captured exhibit data.","enum":["STANDARD","COMPLEX","EXHIBIT"],"uniqueKey":"tags.items.[INDEX].category","typeLabel":"enum\u003cstring>"},"value":{"oneOf":[{"type":"object","title":"date","description":"The basic captured data for this Tag. Some tags may have additional customValues, tagComponents, or schedules that supplement this. Branch on `value.kind` for its shape: `date`, `number`, `money`, `percent`, and `text` carry a single `value`, while `dateRange` and `numberRange` carry `start` and `end` instead. Every kind also carries `unit`, `capturedData`, and `ocrText`, and the typed fields are omitted when `capturedData` could not be parsed into the kind's type — `capturedData` always holds the raw text. A numeric value captured with a percent unit arrives as `percent` — a pro-rata share (`prs`, `opexPrs`, `taxPrs`), a gross up, or a rent bump, for instance — carrying the percentage itself, so `3.5` means three and a half percent. Tags that accept both percent and dollar units, such as `rentBump` and `opexCap`, return `percent` or `money` according to the unit the value was captured with. A tag declared as a string type returns `text` even when a percent unit is present.","required":["kind"],"properties":{"kind":{"type":"string","description":"Discriminator for this shape — always `date` here.","enum":["date"],"isRequired":true,"uniqueKey":"tags.items.[INDEX].value.oneOf.0.kind","typeLabel":"enum\u003cstring>"},"unit":{"type":"string","description":"Unit qualifier for the value when the source text carried one (e.g. months, per square foot).","uniqueKey":"tags.items.[INDEX].value.oneOf.0.unit","typeLabel":"string"},"capturedData":{"type":"string","description":"The value as captured during extraction, as text.","uniqueKey":"tags.items.[INDEX].value.oneOf.0.capturedData","typeLabel":"string"},"ocrText":{"type":"string","description":"Raw source text the value was extracted from.","uniqueKey":"tags.items.[INDEX].value.oneOf.0.ocrText","typeLabel":"string"},"value":{"type":"string","description":"Present when `kind` is `date`. The captured date, `yyyy-MM-dd`. Omitted when the captured text was not parseable as a date; `capturedData` still holds what was captured.","uniqueKey":"tags.items.[INDEX].value.oneOf.0.value","typeLabel":"string"}},"uniqueKey":"tags.items.[INDEX].value.oneOf.0","typeLabel":"date · object"},{"type":"object","title":"dateRange","description":"The basic captured data for this Tag. Some tags may have additional customValues, tagComponents, or schedules that supplement this. Branch on `value.kind` for its shape: `date`, `number`, `money`, `percent`, and `text` carry a single `value`, while `dateRange` and `numberRange` carry `start` and `end` instead. Every kind also carries `unit`, `capturedData`, and `ocrText`, and the typed fields are omitted when `capturedData` could not be parsed into the kind's type — `capturedData` always holds the raw text. A numeric value captured with a percent unit arrives as `percent` — a pro-rata share (`prs`, `opexPrs`, `taxPrs`), a gross up, or a rent bump, for instance — carrying the percentage itself, so `3.5` means three and a half percent. Tags that accept both percent and dollar units, such as `rentBump` and `opexCap`, return `percent` or `money` according to the unit the value was captured with. A tag declared as a string type returns `text` even when a percent unit is present.","required":["kind"],"properties":{"kind":{"type":"string","description":"Discriminator for this shape — always `dateRange` here.","enum":["dateRange"],"isRequired":true,"uniqueKey":"tags.items.[INDEX].value.oneOf.1.kind","typeLabel":"enum\u003cstring>"},"unit":{"type":"string","description":"Unit qualifier for the value when the source text carried one (e.g. months, per square foot).","uniqueKey":"tags.items.[INDEX].value.oneOf.1.unit","typeLabel":"string"},"capturedData":{"type":"string","description":"The value as captured during extraction, as text.","uniqueKey":"tags.items.[INDEX].value.oneOf.1.capturedData","typeLabel":"string"},"ocrText":{"type":"string","description":"Raw source text the value was extracted from.","uniqueKey":"tags.items.[INDEX].value.oneOf.1.ocrText","typeLabel":"string"},"start":{"type":"string","description":"Present when `kind` is `dateRange`. Inclusive start of the range, `yyyy-MM-dd`. Omitted together with `end` when `capturedData` could not be split into a parseable pair.","uniqueKey":"tags.items.[INDEX].value.oneOf.1.start","typeLabel":"string"},"end":{"type":"string","description":"Present when `kind` is `dateRange`. Inclusive end of the range, `yyyy-MM-dd`. Omitted together with `start` when `capturedData` could not be split into a parseable pair.","uniqueKey":"tags.items.[INDEX].value.oneOf.1.end","typeLabel":"string"}},"uniqueKey":"tags.items.[INDEX].value.oneOf.1","typeLabel":"dateRange · object"},{"type":"object","title":"money","description":"The basic captured data for this Tag. Some tags may have additional customValues, tagComponents, or schedules that supplement this. Branch on `value.kind` for its shape: `date`, `number`, `money`, `percent`, and `text` carry a single `value`, while `dateRange` and `numberRange` carry `start` and `end` instead. Every kind also carries `unit`, `capturedData`, and `ocrText`, and the typed fields are omitted when `capturedData` could not be parsed into the kind's type — `capturedData` always holds the raw text. A numeric value captured with a percent unit arrives as `percent` — a pro-rata share (`prs`, `opexPrs`, `taxPrs`), a gross up, or a rent bump, for instance — carrying the percentage itself, so `3.5` means three and a half percent. Tags that accept both percent and dollar units, such as `rentBump` and `opexCap`, return `percent` or `money` according to the unit the value was captured with. A tag declared as a string type returns `text` even when a percent unit is present.","required":["kind"],"properties":{"kind":{"type":"string","description":"Discriminator for this shape — always `money` here.","enum":["money"],"isRequired":true,"uniqueKey":"tags.items.[INDEX].value.oneOf.2.kind","typeLabel":"enum\u003cstring>"},"unit":{"type":"string","description":"Unit qualifier for the value when the source text carried one (e.g. months, per square foot).","uniqueKey":"tags.items.[INDEX].value.oneOf.2.unit","typeLabel":"string"},"capturedData":{"type":"string","description":"The value as captured during extraction, as text.","uniqueKey":"tags.items.[INDEX].value.oneOf.2.capturedData","typeLabel":"string"},"ocrText":{"type":"string","description":"Raw source text the value was extracted from.","uniqueKey":"tags.items.[INDEX].value.oneOf.2.ocrText","typeLabel":"string"},"value":{"type":"string","description":"Present when `kind` is `money`. Decimal string (not a JSON number) holding a BigDecimal rounded to 2 decimals — preserves cent precision through JSON, e.g. \"120000.00\".","uniqueKey":"tags.items.[INDEX].value.oneOf.2.value","typeLabel":"string"},"currency":{"type":"string","description":"Currency code for the value (e.g. USD).","uniqueKey":"tags.items.[INDEX].value.oneOf.2.currency","typeLabel":"string"}},"uniqueKey":"tags.items.[INDEX].value.oneOf.2","typeLabel":"money · object"},{"type":"object","title":"number","description":"The basic captured data for this Tag. Some tags may have additional customValues, tagComponents, or schedules that supplement this. Branch on `value.kind` for its shape: `date`, `number`, `money`, `percent`, and `text` carry a single `value`, while `dateRange` and `numberRange` carry `start` and `end` instead. Every kind also carries `unit`, `capturedData`, and `ocrText`, and the typed fields are omitted when `capturedData` could not be parsed into the kind's type — `capturedData` always holds the raw text. A numeric value captured with a percent unit arrives as `percent` — a pro-rata share (`prs`, `opexPrs`, `taxPrs`), a gross up, or a rent bump, for instance — carrying the percentage itself, so `3.5` means three and a half percent. Tags that accept both percent and dollar units, such as `rentBump` and `opexCap`, return `percent` or `money` according to the unit the value was captured with. A tag declared as a string type returns `text` even when a percent unit is present.","required":["kind"],"properties":{"kind":{"type":"string","description":"Discriminator for this shape — always `number` here.","enum":["number"],"isRequired":true,"uniqueKey":"tags.items.[INDEX].value.oneOf.3.kind","typeLabel":"enum\u003cstring>"},"unit":{"type":"string","description":"Unit qualifier for the value when the source text carried one (e.g. months, per square foot).","uniqueKey":"tags.items.[INDEX].value.oneOf.3.unit","typeLabel":"string"},"capturedData":{"type":"string","description":"The value as captured during extraction, as text.","uniqueKey":"tags.items.[INDEX].value.oneOf.3.capturedData","typeLabel":"string"},"ocrText":{"type":"string","description":"Raw source text the value was extracted from.","uniqueKey":"tags.items.[INDEX].value.oneOf.3.ocrText","typeLabel":"string"},"value":{"type":"number","description":"The typed value. Its JSON type follows `kind`: a number for `number` and `percent`, a `yyyy-MM-dd` string for `date`, a decimal string for `money`, and the captured text for `text`. Omitted when `capturedData` could not be parsed into that type.","uniqueKey":"tags.items.[INDEX].value.oneOf.3.value","typeLabel":"number"}},"uniqueKey":"tags.items.[INDEX].value.oneOf.3","typeLabel":"number · object"},{"type":"object","title":"numberRange","description":"The basic captured data for this Tag. Some tags may have additional customValues, tagComponents, or schedules that supplement this. Branch on `value.kind` for its shape: `date`, `number`, `money`, `percent`, and `text` carry a single `value`, while `dateRange` and `numberRange` carry `start` and `end` instead. Every kind also carries `unit`, `capturedData`, and `ocrText`, and the typed fields are omitted when `capturedData` could not be parsed into the kind's type — `capturedData` always holds the raw text. A numeric value captured with a percent unit arrives as `percent` — a pro-rata share (`prs`, `opexPrs`, `taxPrs`), a gross up, or a rent bump, for instance — carrying the percentage itself, so `3.5` means three and a half percent. Tags that accept both percent and dollar units, such as `rentBump` and `opexCap`, return `percent` or `money` according to the unit the value was captured with. A tag declared as a string type returns `text` even when a percent unit is present.","required":["kind"],"properties":{"kind":{"type":"string","description":"Discriminator for this shape — always `numberRange` here.","enum":["numberRange"],"isRequired":true,"uniqueKey":"tags.items.[INDEX].value.oneOf.4.kind","typeLabel":"enum\u003cstring>"},"unit":{"type":"string","description":"Unit qualifier for the value when the source text carried one (e.g. months, per square foot).","uniqueKey":"tags.items.[INDEX].value.oneOf.4.unit","typeLabel":"string"},"capturedData":{"type":"string","description":"The value as captured during extraction, as text.","uniqueKey":"tags.items.[INDEX].value.oneOf.4.capturedData","typeLabel":"string"},"ocrText":{"type":"string","description":"Raw source text the value was extracted from.","uniqueKey":"tags.items.[INDEX].value.oneOf.4.ocrText","typeLabel":"string"},"start":{"type":"integer","format":"int32","description":"Inclusive start of the range: a `yyyy-MM-dd` string for `dateRange`, an integer for `numberRange`. Omitted together with `end` when `capturedData` could not be split into a parseable pair.","uniqueKey":"tags.items.[INDEX].value.oneOf.4.start","typeLabel":"integer\u003cint32>"},"end":{"type":"integer","format":"int32","description":"Inclusive end of the range: a `yyyy-MM-dd` string for `dateRange`, an integer for `numberRange`. Omitted together with `start` when `capturedData` could not be split into a parseable pair.","uniqueKey":"tags.items.[INDEX].value.oneOf.4.end","typeLabel":"integer\u003cint32>"}},"uniqueKey":"tags.items.[INDEX].value.oneOf.4","typeLabel":"numberRange · object"},{"type":"object","title":"percent","description":"The basic captured data for this Tag. Some tags may have additional customValues, tagComponents, or schedules that supplement this. Branch on `value.kind` for its shape: `date`, `number`, `money`, `percent`, and `text` carry a single `value`, while `dateRange` and `numberRange` carry `start` and `end` instead. Every kind also carries `unit`, `capturedData`, and `ocrText`, and the typed fields are omitted when `capturedData` could not be parsed into the kind's type — `capturedData` always holds the raw text. A numeric value captured with a percent unit arrives as `percent` — a pro-rata share (`prs`, `opexPrs`, `taxPrs`), a gross up, or a rent bump, for instance — carrying the percentage itself, so `3.5` means three and a half percent. Tags that accept both percent and dollar units, such as `rentBump` and `opexCap`, return `percent` or `money` according to the unit the value was captured with. A tag declared as a string type returns `text` even when a percent unit is present.","required":["kind"],"properties":{"kind":{"type":"string","description":"Discriminator for this shape — always `percent` here.","enum":["percent"],"isRequired":true,"uniqueKey":"tags.items.[INDEX].value.oneOf.5.kind","typeLabel":"enum\u003cstring>"},"unit":{"type":"string","description":"Unit qualifier for the value when the source text carried one (e.g. months, per square foot).","uniqueKey":"tags.items.[INDEX].value.oneOf.5.unit","typeLabel":"string"},"capturedData":{"type":"string","description":"The value as captured during extraction, as text.","uniqueKey":"tags.items.[INDEX].value.oneOf.5.capturedData","typeLabel":"string"},"ocrText":{"type":"string","description":"Raw source text the value was extracted from.","uniqueKey":"tags.items.[INDEX].value.oneOf.5.ocrText","typeLabel":"string"},"value":{"type":"number","description":"The typed value. Its JSON type follows `kind`: a number for `number` and `percent`, a `yyyy-MM-dd` string for `date`, a decimal string for `money`, and the captured text for `text`. Omitted when `capturedData` could not be parsed into that type.","uniqueKey":"tags.items.[INDEX].value.oneOf.5.value","typeLabel":"number"}},"uniqueKey":"tags.items.[INDEX].value.oneOf.5","typeLabel":"percent · object"},{"type":"object","title":"text","description":"The basic captured data for this Tag. Some tags may have additional customValues, tagComponents, or schedules that supplement this. Branch on `value.kind` for its shape: `date`, `number`, `money`, `percent`, and `text` carry a single `value`, while `dateRange` and `numberRange` carry `start` and `end` instead. Every kind also carries `unit`, `capturedData`, and `ocrText`, and the typed fields are omitted when `capturedData` could not be parsed into the kind's type — `capturedData` always holds the raw text. A numeric value captured with a percent unit arrives as `percent` — a pro-rata share (`prs`, `opexPrs`, `taxPrs`), a gross up, or a rent bump, for instance — carrying the percentage itself, so `3.5` means three and a half percent. Tags that accept both percent and dollar units, such as `rentBump` and `opexCap`, return `percent` or `money` according to the unit the value was captured with. A tag declared as a string type returns `text` even when a percent unit is present.","required":["kind"],"properties":{"kind":{"type":"string","description":"Discriminator for this shape — always `text` here.","enum":["text"],"isRequired":true,"uniqueKey":"tags.items.[INDEX].value.oneOf.6.kind","typeLabel":"enum\u003cstring>"},"unit":{"type":"string","description":"Unit qualifier for the value when the source text carried one (e.g. months, per square foot).","uniqueKey":"tags.items.[INDEX].value.oneOf.6.unit","typeLabel":"string"},"capturedData":{"type":"string","description":"The value as captured during extraction, as text.","uniqueKey":"tags.items.[INDEX].value.oneOf.6.capturedData","typeLabel":"string"},"ocrText":{"type":"string","description":"Raw source text the value was extracted from.","uniqueKey":"tags.items.[INDEX].value.oneOf.6.ocrText","typeLabel":"string"},"value":{"type":"string","description":"The typed value. Its JSON type follows `kind`: a number for `number` and `percent`, a `yyyy-MM-dd` string for `date`, a decimal string for `money`, and the captured text for `text`. Omitted when `capturedData` could not be parsed into that type.","uniqueKey":"tags.items.[INDEX].value.oneOf.6.value","typeLabel":"string"}},"uniqueKey":"tags.items.[INDEX].value.oneOf.6","typeLabel":"text · object"}],"uniqueKey":"tags.items.[INDEX].value","typeLabel":"date · object | dateRange · object | money · object | number · object | numberRange · object | percent · object | text · object"},"customValue1":{"type":"string","description":"Tag-specific extra field; meaning depends on the tag.","uniqueKey":"tags.items.[INDEX].customValue1","typeLabel":"string"},"customValue2":{"type":"string","description":"Tag-specific extra field; meaning depends on the tag.","uniqueKey":"tags.items.[INDEX].customValue2","typeLabel":"string"},"customValue3":{"type":"string","description":"Tag-specific extra field; meaning depends on the tag.","uniqueKey":"tags.items.[INDEX].customValue3","typeLabel":"string"},"customValue4":{"type":"string","description":"Tag-specific extra field; meaning depends on the tag.","uniqueKey":"tags.items.[INDEX].customValue4","typeLabel":"string"},"customValue5":{"type":"string","description":"Tag-specific extra field; meaning depends on the tag.","uniqueKey":"tags.items.[INDEX].customValue5","typeLabel":"string"},"customValue6":{"type":"string","description":"Tag-specific extra field; meaning depends on the tag.","uniqueKey":"tags.items.[INDEX].customValue6","typeLabel":"string"},"schedule":{"type":"object","properties":{"kind":{"type":"string","description":"Which schedule this is; determines the shape of `entries`.","enum":["RENT","PERCENT_RENT","ABATEMENT","REFUND","FEE"],"uniqueKey":"tags.items.[INDEX].schedule.kind","typeLabel":"enum\u003cstring>"},"entries":{"type":"array","description":"The schedule rows, in order.","items":{"oneOf":[{"type":"object","title":"RENT","description":"Entry in a `schedule`. Entries carry no discriminator of their own — the parent `schedule.kind` selects the shape, and each variant is named for the kind that produces it.","properties":{"sequence":{"type":"integer","description":"0-indexed ordering within the schedule.","format":"int32","uniqueKey":"tags.items.[INDEX].schedule.entries.items.[INDEX].oneOf.0.sequence","typeLabel":"integer\u003cint32>"},"startDate":{"type":"string","description":"First day this rent step applies, `yyyy-MM-dd`. Null when the step is expressed only as months from commencement — read `startMonth` instead.","uniqueKey":"tags.items.[INDEX].schedule.entries.items.[INDEX].oneOf.0.startDate","typeLabel":"string"},"endDate":{"type":"string","description":"Last day this rent step applies, `yyyy-MM-dd`. Null when the step is expressed only as months from commencement — read `endMonth` instead.","uniqueKey":"tags.items.[INDEX].schedule.entries.items.[INDEX].oneOf.0.endDate","typeLabel":"string"},"startMonth":{"type":"integer","format":"int32","description":"1-indexed month from lease commencement (month 1 = the commencement month). Null when only dates are given.","uniqueKey":"tags.items.[INDEX].schedule.entries.items.[INDEX].oneOf.0.startMonth","typeLabel":"integer\u003cint32>"},"endMonth":{"type":"integer","format":"int32","description":"1-indexed month from lease commencement.","uniqueKey":"tags.items.[INDEX].schedule.entries.items.[INDEX].oneOf.0.endMonth","typeLabel":"integer\u003cint32>"},"squareFootage":{"type":"integer","format":"int32","description":"Rentable square footage the step is calculated against, when the lease states it per step. Steps in the same schedule can differ when the premises change size mid-term.","uniqueKey":"tags.items.[INDEX].schedule.entries.items.[INDEX].oneOf.0.squareFootage","typeLabel":"integer\u003cint32>"},"baseRent":{"type":"object","title":"money","description":"Base rent for this step, annualized.","required":["kind"],"properties":{"kind":{"type":"string","description":"Discriminator for this shape — always `money` here.","enum":["money"],"isRequired":true,"uniqueKey":"tags.items.[INDEX].schedule.entries.items.[INDEX].oneOf.0.baseRent.kind","typeLabel":"enum\u003cstring>"},"unit":{"type":"string","description":"Unit qualifier for the value when the source text carried one (e.g. months, per square foot).","uniqueKey":"tags.items.[INDEX].schedule.entries.items.[INDEX].oneOf.0.baseRent.unit","typeLabel":"string"},"capturedData":{"type":"string","description":"The value as captured during extraction, as text.","uniqueKey":"tags.items.[INDEX].schedule.entries.items.[INDEX].oneOf.0.baseRent.capturedData","typeLabel":"string"},"ocrText":{"type":"string","description":"Raw source text the value was extracted from.","uniqueKey":"tags.items.[INDEX].schedule.entries.items.[INDEX].oneOf.0.baseRent.ocrText","typeLabel":"string"},"value":{"type":"string","description":"Present when `kind` is `money`. Decimal string (not a JSON number) holding a BigDecimal rounded to 2 decimals — preserves cent precision through JSON, e.g. \"120000.00\".","uniqueKey":"tags.items.[INDEX].schedule.entries.items.[INDEX].oneOf.0.baseRent.value","typeLabel":"string"},"currency":{"type":"string","description":"Currency code for the value (e.g. USD).","uniqueKey":"tags.items.[INDEX].schedule.entries.items.[INDEX].oneOf.0.baseRent.currency","typeLabel":"string"}},"uniqueKey":"tags.items.[INDEX].schedule.entries.items.[INDEX].oneOf.0.baseRent","typeLabel":"money · object"},"fixedRETaxes":{"type":"object","title":"money","description":"Fixed real-estate-tax charge for this step, when the lease fixes taxes rather than passing them through.","required":["kind"],"properties":{"kind":{"type":"string","description":"Discriminator for this shape — always `money` here.","enum":["money"],"isRequired":true,"uniqueKey":"tags.items.[INDEX].schedule.entries.items.[INDEX].oneOf.0.fixedRETaxes.kind","typeLabel":"enum\u003cstring>"},"unit":{"type":"string","description":"Unit qualifier for the value when the source text carried one (e.g. months, per square foot).","uniqueKey":"tags.items.[INDEX].schedule.entries.items.[INDEX].oneOf.0.fixedRETaxes.unit","typeLabel":"string"},"capturedData":{"type":"string","description":"The value as captured during extraction, as text.","uniqueKey":"tags.items.[INDEX].schedule.entries.items.[INDEX].oneOf.0.fixedRETaxes.capturedData","typeLabel":"string"},"ocrText":{"type":"string","description":"Raw source text the value was extracted from.","uniqueKey":"tags.items.[INDEX].schedule.entries.items.[INDEX].oneOf.0.fixedRETaxes.ocrText","typeLabel":"string"},"value":{"type":"string","description":"Present when `kind` is `money`. Decimal string (not a JSON number) holding a BigDecimal rounded to 2 decimals — preserves cent precision through JSON, e.g. \"120000.00\".","uniqueKey":"tags.items.[INDEX].schedule.entries.items.[INDEX].oneOf.0.fixedRETaxes.value","typeLabel":"string"},"currency":{"type":"string","description":"Currency code for the value (e.g. USD).","uniqueKey":"tags.items.[INDEX].schedule.entries.items.[INDEX].oneOf.0.fixedRETaxes.currency","typeLabel":"string"}},"uniqueKey":"tags.items.[INDEX].schedule.entries.items.[INDEX].oneOf.0.fixedRETaxes","typeLabel":"money · object"},"fixedOpex":{"type":"object","title":"money","description":"Fixed operating-expense charge for this step, when the lease fixes opex.","required":["kind"],"properties":{"kind":{"type":"string","description":"Discriminator for this shape — always `money` here.","enum":["money"],"isRequired":true,"uniqueKey":"tags.items.[INDEX].schedule.entries.items.[INDEX].oneOf.0.fixedOpex.kind","typeLabel":"enum\u003cstring>"},"unit":{"type":"string","description":"Unit qualifier for the value when the source text carried one (e.g. months, per square foot).","uniqueKey":"tags.items.[INDEX].schedule.entries.items.[INDEX].oneOf.0.fixedOpex.unit","typeLabel":"string"},"capturedData":{"type":"string","description":"The value as captured during extraction, as text.","uniqueKey":"tags.items.[INDEX].schedule.entries.items.[INDEX].oneOf.0.fixedOpex.capturedData","typeLabel":"string"},"ocrText":{"type":"string","description":"Raw source text the value was extracted from.","uniqueKey":"tags.items.[INDEX].schedule.entries.items.[INDEX].oneOf.0.fixedOpex.ocrText","typeLabel":"string"},"value":{"type":"string","description":"Present when `kind` is `money`. Decimal string (not a JSON number) holding a BigDecimal rounded to 2 decimals — preserves cent precision through JSON, e.g. \"120000.00\".","uniqueKey":"tags.items.[INDEX].schedule.entries.items.[INDEX].oneOf.0.fixedOpex.value","typeLabel":"string"},"currency":{"type":"string","description":"Currency code for the value (e.g. USD).","uniqueKey":"tags.items.[INDEX].schedule.entries.items.[INDEX].oneOf.0.fixedOpex.currency","typeLabel":"string"}},"uniqueKey":"tags.items.[INDEX].schedule.entries.items.[INDEX].oneOf.0.fixedOpex","typeLabel":"money · object"},"fixedParking":{"type":"object","title":"money","description":"Only captured on `GSA_OFFICE` leases — the underlying tag cannot be created on any other lease type, so this is null elsewhere. Fixed parking charge for this step, when stated.","required":["kind"],"properties":{"kind":{"type":"string","description":"Discriminator for this shape — always `money` here.","enum":["money"],"isRequired":true,"uniqueKey":"tags.items.[INDEX].schedule.entries.items.[INDEX].oneOf.0.fixedParking.kind","typeLabel":"enum\u003cstring>"},"unit":{"type":"string","description":"Unit qualifier for the value when the source text carried one (e.g. months, per square foot).","uniqueKey":"tags.items.[INDEX].schedule.entries.items.[INDEX].oneOf.0.fixedParking.unit","typeLabel":"string"},"capturedData":{"type":"string","description":"The value as captured during extraction, as text.","uniqueKey":"tags.items.[INDEX].schedule.entries.items.[INDEX].oneOf.0.fixedParking.capturedData","typeLabel":"string"},"ocrText":{"type":"string","description":"Raw source text the value was extracted from.","uniqueKey":"tags.items.[INDEX].schedule.entries.items.[INDEX].oneOf.0.fixedParking.ocrText","typeLabel":"string"},"value":{"type":"string","description":"Present when `kind` is `money`. Decimal string (not a JSON number) holding a BigDecimal rounded to 2 decimals — preserves cent precision through JSON, e.g. \"120000.00\".","uniqueKey":"tags.items.[INDEX].schedule.entries.items.[INDEX].oneOf.0.fixedParking.value","typeLabel":"string"},"currency":{"type":"string","description":"Currency code for the value (e.g. USD).","uniqueKey":"tags.items.[INDEX].schedule.entries.items.[INDEX].oneOf.0.fixedParking.currency","typeLabel":"string"}},"uniqueKey":"tags.items.[INDEX].schedule.entries.items.[INDEX].oneOf.0.fixedParking","typeLabel":"money · object"},"annualTiRent":{"type":"object","title":"money","description":"Only captured on `GSA_OFFICE` leases — the underlying tag cannot be created on any other lease type, so this is null elsewhere. Annualized portion of base rent that amortizes the tenant-improvement allowance.","required":["kind"],"properties":{"kind":{"type":"string","description":"Discriminator for this shape — always `money` here.","enum":["money"],"isRequired":true,"uniqueKey":"tags.items.[INDEX].schedule.entries.items.[INDEX].oneOf.0.annualTiRent.kind","typeLabel":"enum\u003cstring>"},"unit":{"type":"string","description":"Unit qualifier for the value when the source text carried one (e.g. months, per square foot).","uniqueKey":"tags.items.[INDEX].schedule.entries.items.[INDEX].oneOf.0.annualTiRent.unit","typeLabel":"string"},"capturedData":{"type":"string","description":"The value as captured during extraction, as text.","uniqueKey":"tags.items.[INDEX].schedule.entries.items.[INDEX].oneOf.0.annualTiRent.capturedData","typeLabel":"string"},"ocrText":{"type":"string","description":"Raw source text the value was extracted from.","uniqueKey":"tags.items.[INDEX].schedule.entries.items.[INDEX].oneOf.0.annualTiRent.ocrText","typeLabel":"string"},"value":{"type":"string","description":"Present when `kind` is `money`. Decimal string (not a JSON number) holding a BigDecimal rounded to 2 decimals — preserves cent precision through JSON, e.g. \"120000.00\".","uniqueKey":"tags.items.[INDEX].schedule.entries.items.[INDEX].oneOf.0.annualTiRent.value","typeLabel":"string"},"currency":{"type":"string","description":"Currency code for the value (e.g. USD).","uniqueKey":"tags.items.[INDEX].schedule.entries.items.[INDEX].oneOf.0.annualTiRent.currency","typeLabel":"string"}},"uniqueKey":"tags.items.[INDEX].schedule.entries.items.[INDEX].oneOf.0.annualTiRent","typeLabel":"money · object"},"annualBsacRent":{"type":"object","title":"money","description":"Only captured on `GSA_OFFICE` leases — the underlying tag cannot be created on any other lease type, so this is null elsewhere. Annualized building-standard-allowance-credit portion of base rent.","required":["kind"],"properties":{"kind":{"type":"string","description":"Discriminator for this shape — always `money` here.","enum":["money"],"isRequired":true,"uniqueKey":"tags.items.[INDEX].schedule.entries.items.[INDEX].oneOf.0.annualBsacRent.kind","typeLabel":"enum\u003cstring>"},"unit":{"type":"string","description":"Unit qualifier for the value when the source text carried one (e.g. months, per square foot).","uniqueKey":"tags.items.[INDEX].schedule.entries.items.[INDEX].oneOf.0.annualBsacRent.unit","typeLabel":"string"},"capturedData":{"type":"string","description":"The value as captured during extraction, as text.","uniqueKey":"tags.items.[INDEX].schedule.entries.items.[INDEX].oneOf.0.annualBsacRent.capturedData","typeLabel":"string"},"ocrText":{"type":"string","description":"Raw source text the value was extracted from.","uniqueKey":"tags.items.[INDEX].schedule.entries.items.[INDEX].oneOf.0.annualBsacRent.ocrText","typeLabel":"string"},"value":{"type":"string","description":"Present when `kind` is `money`. Decimal string (not a JSON number) holding a BigDecimal rounded to 2 decimals — preserves cent precision through JSON, e.g. \"120000.00\".","uniqueKey":"tags.items.[INDEX].schedule.entries.items.[INDEX].oneOf.0.annualBsacRent.value","typeLabel":"string"},"currency":{"type":"string","description":"Currency code for the value (e.g. USD).","uniqueKey":"tags.items.[INDEX].schedule.entries.items.[INDEX].oneOf.0.annualBsacRent.currency","typeLabel":"string"}},"uniqueKey":"tags.items.[INDEX].schedule.entries.items.[INDEX].oneOf.0.annualBsacRent","typeLabel":"money · object"},"cpiIncreaseAmount":{"type":"object","title":"money","description":"Only captured on `GSA_OFFICE` leases — the underlying tag cannot be created on any other lease type, so this is null elsewhere. Dollar amount of the CPI-driven rent increase applied to this step, when the lease has a CPI escalator.","required":["kind"],"properties":{"kind":{"type":"string","description":"Discriminator for this shape — always `money` here.","enum":["money"],"isRequired":true,"uniqueKey":"tags.items.[INDEX].schedule.entries.items.[INDEX].oneOf.0.cpiIncreaseAmount.kind","typeLabel":"enum\u003cstring>"},"unit":{"type":"string","description":"Unit qualifier for the value when the source text carried one (e.g. months, per square foot).","uniqueKey":"tags.items.[INDEX].schedule.entries.items.[INDEX].oneOf.0.cpiIncreaseAmount.unit","typeLabel":"string"},"capturedData":{"type":"string","description":"The value as captured during extraction, as text.","uniqueKey":"tags.items.[INDEX].schedule.entries.items.[INDEX].oneOf.0.cpiIncreaseAmount.capturedData","typeLabel":"string"},"ocrText":{"type":"string","description":"Raw source text the value was extracted from.","uniqueKey":"tags.items.[INDEX].schedule.entries.items.[INDEX].oneOf.0.cpiIncreaseAmount.ocrText","typeLabel":"string"},"value":{"type":"string","description":"Present when `kind` is `money`. Decimal string (not a JSON number) holding a BigDecimal rounded to 2 decimals — preserves cent precision through JSON, e.g. \"120000.00\".","uniqueKey":"tags.items.[INDEX].schedule.entries.items.[INDEX].oneOf.0.cpiIncreaseAmount.value","typeLabel":"string"},"currency":{"type":"string","description":"Currency code for the value (e.g. USD).","uniqueKey":"tags.items.[INDEX].schedule.entries.items.[INDEX].oneOf.0.cpiIncreaseAmount.currency","typeLabel":"string"}},"uniqueKey":"tags.items.[INDEX].schedule.entries.items.[INDEX].oneOf.0.cpiIncreaseAmount","typeLabel":"money · object"}},"uniqueKey":"tags.items.[INDEX].schedule.entries.items.[INDEX].oneOf.0","typeLabel":"RENT · object"},{"type":"object","title":"FEE","description":"Entry in a `schedule`. Entries carry no discriminator of their own — the parent `schedule.kind` selects the shape, and each variant is named for the kind that produces it.","properties":{"sequence":{"type":"integer","description":"0-indexed ordering within the schedule.","format":"int32","uniqueKey":"tags.items.[INDEX].schedule.entries.items.[INDEX].oneOf.1.sequence","typeLabel":"integer\u003cint32>"},"startDate":{"type":"string","description":"First day this fee step applies, `yyyy-MM-dd`. Null when the step is expressed only as months from commencement — read `startMonth` instead.","uniqueKey":"tags.items.[INDEX].schedule.entries.items.[INDEX].oneOf.1.startDate","typeLabel":"string"},"endDate":{"type":"string","description":"Last day this fee step applies, `yyyy-MM-dd`. Null when the step is expressed only as months from commencement — read `endMonth` instead.","uniqueKey":"tags.items.[INDEX].schedule.entries.items.[INDEX].oneOf.1.endDate","typeLabel":"string"},"startMonth":{"type":"integer","format":"int32","description":"1-indexed month from lease commencement (month 1 = the commencement month). Null when only dates are given.","uniqueKey":"tags.items.[INDEX].schedule.entries.items.[INDEX].oneOf.1.startMonth","typeLabel":"integer\u003cint32>"},"endMonth":{"type":"integer","format":"int32","description":"1-indexed month from lease commencement.","uniqueKey":"tags.items.[INDEX].schedule.entries.items.[INDEX].oneOf.1.endMonth","typeLabel":"integer\u003cint32>"},"amount":{"type":"object","title":"money","description":"Fee amount for this entry.","required":["kind"],"properties":{"kind":{"type":"string","description":"Discriminator for this shape — always `money` here.","enum":["money"],"isRequired":true,"uniqueKey":"tags.items.[INDEX].schedule.entries.items.[INDEX].oneOf.1.amount.kind","typeLabel":"enum\u003cstring>"},"unit":{"type":"string","description":"Unit qualifier for the value when the source text carried one (e.g. months, per square foot).","uniqueKey":"tags.items.[INDEX].schedule.entries.items.[INDEX].oneOf.1.amount.unit","typeLabel":"string"},"capturedData":{"type":"string","description":"The value as captured during extraction, as text.","uniqueKey":"tags.items.[INDEX].schedule.entries.items.[INDEX].oneOf.1.amount.capturedData","typeLabel":"string"},"ocrText":{"type":"string","description":"Raw source text the value was extracted from.","uniqueKey":"tags.items.[INDEX].schedule.entries.items.[INDEX].oneOf.1.amount.ocrText","typeLabel":"string"},"value":{"type":"string","description":"Present when `kind` is `money`. Decimal string (not a JSON number) holding a BigDecimal rounded to 2 decimals — preserves cent precision through JSON, e.g. \"120000.00\".","uniqueKey":"tags.items.[INDEX].schedule.entries.items.[INDEX].oneOf.1.amount.value","typeLabel":"string"},"currency":{"type":"string","description":"Currency code for the value (e.g. USD).","uniqueKey":"tags.items.[INDEX].schedule.entries.items.[INDEX].oneOf.1.amount.currency","typeLabel":"string"}},"uniqueKey":"tags.items.[INDEX].schedule.entries.items.[INDEX].oneOf.1.amount","typeLabel":"money · object"}},"uniqueKey":"tags.items.[INDEX].schedule.entries.items.[INDEX].oneOf.1","typeLabel":"FEE · object"},{"type":"object","title":"ABATEMENT","description":"Entry in a `schedule`. Entries carry no discriminator of their own — the parent `schedule.kind` selects the shape, and each variant is named for the kind that produces it.","properties":{"sequence":{"type":"integer","description":"0-indexed ordering within the schedule.","format":"int32","uniqueKey":"tags.items.[INDEX].schedule.entries.items.[INDEX].oneOf.2.sequence","typeLabel":"integer\u003cint32>"},"startDate":{"type":"string","description":"First day of this abatement period, `yyyy-MM-dd`. Null when the period is expressed only as months from commencement — read `startMonth` instead.","uniqueKey":"tags.items.[INDEX].schedule.entries.items.[INDEX].oneOf.2.startDate","typeLabel":"string"},"endDate":{"type":"string","description":"Last day of this abatement period, `yyyy-MM-dd`. Null when the period is expressed only as months from commencement — read `endMonth` instead.","uniqueKey":"tags.items.[INDEX].schedule.entries.items.[INDEX].oneOf.2.endDate","typeLabel":"string"},"startMonth":{"type":"integer","format":"int32","description":"1-indexed month from lease commencement (month 1 = the commencement month). Null when only dates are given.","uniqueKey":"tags.items.[INDEX].schedule.entries.items.[INDEX].oneOf.2.startMonth","typeLabel":"integer\u003cint32>"},"endMonth":{"type":"integer","format":"int32","description":"1-indexed month from lease commencement.","uniqueKey":"tags.items.[INDEX].schedule.entries.items.[INDEX].oneOf.2.endMonth","typeLabel":"integer\u003cint32>"},"amount":{"type":"object","title":"money","description":"Abated amount for this period.","required":["kind"],"properties":{"kind":{"type":"string","description":"Discriminator for this shape — always `money` here.","enum":["money"],"isRequired":true,"uniqueKey":"tags.items.[INDEX].schedule.entries.items.[INDEX].oneOf.2.amount.kind","typeLabel":"enum\u003cstring>"},"unit":{"type":"string","description":"Unit qualifier for the value when the source text carried one (e.g. months, per square foot).","uniqueKey":"tags.items.[INDEX].schedule.entries.items.[INDEX].oneOf.2.amount.unit","typeLabel":"string"},"capturedData":{"type":"string","description":"The value as captured during extraction, as text.","uniqueKey":"tags.items.[INDEX].schedule.entries.items.[INDEX].oneOf.2.amount.capturedData","typeLabel":"string"},"ocrText":{"type":"string","description":"Raw source text the value was extracted from.","uniqueKey":"tags.items.[INDEX].schedule.entries.items.[INDEX].oneOf.2.amount.ocrText","typeLabel":"string"},"value":{"type":"string","description":"Present when `kind` is `money`. Decimal string (not a JSON number) holding a BigDecimal rounded to 2 decimals — preserves cent precision through JSON, e.g. \"120000.00\".","uniqueKey":"tags.items.[INDEX].schedule.entries.items.[INDEX].oneOf.2.amount.value","typeLabel":"string"},"currency":{"type":"string","description":"Currency code for the value (e.g. USD).","uniqueKey":"tags.items.[INDEX].schedule.entries.items.[INDEX].oneOf.2.amount.currency","typeLabel":"string"}},"uniqueKey":"tags.items.[INDEX].schedule.entries.items.[INDEX].oneOf.2.amount","typeLabel":"money · object"},"includesTaxAndOpex":{"type":"boolean","description":"True when the abatement covers tax and opex charges in addition to base rent.","uniqueKey":"tags.items.[INDEX].schedule.entries.items.[INDEX].oneOf.2.includesTaxAndOpex","typeLabel":"boolean"},"valueInText":{"type":"string","description":"The abatement as captured in the source text.","uniqueKey":"tags.items.[INDEX].schedule.entries.items.[INDEX].oneOf.2.valueInText","typeLabel":"string"}},"uniqueKey":"tags.items.[INDEX].schedule.entries.items.[INDEX].oneOf.2","typeLabel":"ABATEMENT · object"},{"type":"object","title":"REFUND","description":"Entry in a `schedule`. Entries carry no discriminator of their own — the parent `schedule.kind` selects the shape, and each variant is named for the kind that produces it.","properties":{"sequence":{"type":"integer","description":"0-indexed ordering within the schedule.","format":"int32","uniqueKey":"tags.items.[INDEX].schedule.entries.items.[INDEX].oneOf.3.sequence","typeLabel":"integer\u003cint32>"},"effectiveDate":{"type":"string","description":"Date this refund or release step takes effect, `yyyy-MM-dd`.","uniqueKey":"tags.items.[INDEX].schedule.entries.items.[INDEX].oneOf.3.effectiveDate","typeLabel":"string"},"refundType":{"type":"string","description":"How to read `amount` on this step. `TO` means the deposit is reduced to `amount`, so it is the balance that remains; `BY` means `amount` is the size of the reduction and the balance drops by that amount, floored at zero.","enum":["BY","TO"],"uniqueKey":"tags.items.[INDEX].schedule.entries.items.[INDEX].oneOf.3.refundType","typeLabel":"enum\u003cstring>"},"unitType":{"type":"string","description":"How to read `unitValue` when placing this step in time: `months` and `years` count from lease commencement, `date` means `unitValue` is the date itself. The two together produce `effectiveDate`; a step Prophia cannot place is dropped from the schedule.","uniqueKey":"tags.items.[INDEX].schedule.entries.items.[INDEX].oneOf.3.unitType","typeLabel":"string"},"unitValue":{"type":"string","description":"When this step takes effect, expressed in `unitType` units — a count of months or years from commencement, or a date.","uniqueKey":"tags.items.[INDEX].schedule.entries.items.[INDEX].oneOf.3.unitValue","typeLabel":"string"},"amount":{"type":"object","title":"money","description":"The step's amount, read according to `refundType`: the balance remaining when `TO`, the size of the reduction when `BY`.","required":["kind"],"properties":{"kind":{"type":"string","description":"Discriminator for this shape — always `money` here.","enum":["money"],"isRequired":true,"uniqueKey":"tags.items.[INDEX].schedule.entries.items.[INDEX].oneOf.3.amount.kind","typeLabel":"enum\u003cstring>"},"unit":{"type":"string","description":"Unit qualifier for the value when the source text carried one (e.g. months, per square foot).","uniqueKey":"tags.items.[INDEX].schedule.entries.items.[INDEX].oneOf.3.amount.unit","typeLabel":"string"},"capturedData":{"type":"string","description":"The value as captured during extraction, as text.","uniqueKey":"tags.items.[INDEX].schedule.entries.items.[INDEX].oneOf.3.amount.capturedData","typeLabel":"string"},"ocrText":{"type":"string","description":"Raw source text the value was extracted from.","uniqueKey":"tags.items.[INDEX].schedule.entries.items.[INDEX].oneOf.3.amount.ocrText","typeLabel":"string"},"value":{"type":"string","description":"Present when `kind` is `money`. Decimal string (not a JSON number) holding a BigDecimal rounded to 2 decimals — preserves cent precision through JSON, e.g. \"120000.00\".","uniqueKey":"tags.items.[INDEX].schedule.entries.items.[INDEX].oneOf.3.amount.value","typeLabel":"string"},"currency":{"type":"string","description":"Currency code for the value (e.g. USD).","uniqueKey":"tags.items.[INDEX].schedule.entries.items.[INDEX].oneOf.3.amount.currency","typeLabel":"string"}},"uniqueKey":"tags.items.[INDEX].schedule.entries.items.[INDEX].oneOf.3.amount","typeLabel":"money · object"},"reducedAmount":{"type":"object","title":"money","description":"The deposit as it stands at this step: the original amount from the deposit tag with every reduction up to and including this one applied. Prophia walks the schedule in `sequence` order to derive it, subtracting for a `BY` step and replacing the running balance for a `TO` step, floored at zero — so read this rather than accumulating `amount` yourself.","required":["kind"],"properties":{"kind":{"type":"string","description":"Discriminator for this shape — always `money` here.","enum":["money"],"isRequired":true,"uniqueKey":"tags.items.[INDEX].schedule.entries.items.[INDEX].oneOf.3.reducedAmount.kind","typeLabel":"enum\u003cstring>"},"unit":{"type":"string","description":"Unit qualifier for the value when the source text carried one (e.g. months, per square foot).","uniqueKey":"tags.items.[INDEX].schedule.entries.items.[INDEX].oneOf.3.reducedAmount.unit","typeLabel":"string"},"capturedData":{"type":"string","description":"The value as captured during extraction, as text.","uniqueKey":"tags.items.[INDEX].schedule.entries.items.[INDEX].oneOf.3.reducedAmount.capturedData","typeLabel":"string"},"ocrText":{"type":"string","description":"Raw source text the value was extracted from.","uniqueKey":"tags.items.[INDEX].schedule.entries.items.[INDEX].oneOf.3.reducedAmount.ocrText","typeLabel":"string"},"value":{"type":"string","description":"Present when `kind` is `money`. Decimal string (not a JSON number) holding a BigDecimal rounded to 2 decimals — preserves cent precision through JSON, e.g. \"120000.00\".","uniqueKey":"tags.items.[INDEX].schedule.entries.items.[INDEX].oneOf.3.reducedAmount.value","typeLabel":"string"},"currency":{"type":"string","description":"Currency code for the value (e.g. USD).","uniqueKey":"tags.items.[INDEX].schedule.entries.items.[INDEX].oneOf.3.reducedAmount.currency","typeLabel":"string"}},"uniqueKey":"tags.items.[INDEX].schedule.entries.items.[INDEX].oneOf.3.reducedAmount","typeLabel":"money · object"},"appliesToBaseRent":{"type":"boolean","description":"True when the refund applies against base rent.","uniqueKey":"tags.items.[INDEX].schedule.entries.items.[INDEX].oneOf.3.appliesToBaseRent","typeLabel":"boolean"}},"uniqueKey":"tags.items.[INDEX].schedule.entries.items.[INDEX].oneOf.3","typeLabel":"REFUND · object"},{"type":"object","title":"PERCENT_RENT","description":"Entry in a `schedule`. Entries carry no discriminator of their own — the parent `schedule.kind` selects the shape, and each variant is named for the kind that produces it.","properties":{"sequence":{"type":"integer","description":"0-indexed ordering within the schedule.","format":"int32","uniqueKey":"tags.items.[INDEX].schedule.entries.items.[INDEX].oneOf.4.sequence","typeLabel":"integer\u003cint32>"},"startDate":{"type":"string","description":"First day of this percentage-rent period, `yyyy-MM-dd`. Null when the period is expressed only as months from commencement — read `startMonth` instead.","uniqueKey":"tags.items.[INDEX].schedule.entries.items.[INDEX].oneOf.4.startDate","typeLabel":"string"},"endDate":{"type":"string","description":"Last day of this percentage-rent period, `yyyy-MM-dd`. Null when the period is expressed only as months from commencement — read `endMonth` instead.","uniqueKey":"tags.items.[INDEX].schedule.entries.items.[INDEX].oneOf.4.endDate","typeLabel":"string"},"startMonth":{"type":"integer","format":"int32","description":"1-indexed month from lease commencement (month 1 = the commencement month). Null when only dates are given.","uniqueKey":"tags.items.[INDEX].schedule.entries.items.[INDEX].oneOf.4.startMonth","typeLabel":"integer\u003cint32>"},"endMonth":{"type":"integer","format":"int32","description":"1-indexed month from lease commencement.","uniqueKey":"tags.items.[INDEX].schedule.entries.items.[INDEX].oneOf.4.endMonth","typeLabel":"integer\u003cint32>"},"percent":{"type":"object","title":"percent","description":"Percentage rate applied for this period.","required":["kind"],"properties":{"kind":{"type":"string","description":"Discriminator for this shape — always `percent` here.","enum":["percent"],"isRequired":true,"uniqueKey":"tags.items.[INDEX].schedule.entries.items.[INDEX].oneOf.4.percent.kind","typeLabel":"enum\u003cstring>"},"unit":{"type":"string","description":"Unit qualifier for the value when the source text carried one (e.g. months, per square foot).","uniqueKey":"tags.items.[INDEX].schedule.entries.items.[INDEX].oneOf.4.percent.unit","typeLabel":"string"},"capturedData":{"type":"string","description":"The value as captured during extraction, as text.","uniqueKey":"tags.items.[INDEX].schedule.entries.items.[INDEX].oneOf.4.percent.capturedData","typeLabel":"string"},"ocrText":{"type":"string","description":"Raw source text the value was extracted from.","uniqueKey":"tags.items.[INDEX].schedule.entries.items.[INDEX].oneOf.4.percent.ocrText","typeLabel":"string"},"value":{"type":"number","description":"The typed value. Its JSON type follows `kind`: a number for `number` and `percent`, a `yyyy-MM-dd` string for `date`, a decimal string for `money`, and the captured text for `text`. Omitted when `capturedData` could not be parsed into that type.","uniqueKey":"tags.items.[INDEX].schedule.entries.items.[INDEX].oneOf.4.percent.value","typeLabel":"number"}},"uniqueKey":"tags.items.[INDEX].schedule.entries.items.[INDEX].oneOf.4.percent","typeLabel":"percent · object"},"breakpoint":{"type":"object","title":"money","description":"Sales breakpoint above which percentage rent applies, when stated.","required":["kind"],"properties":{"kind":{"type":"string","description":"Discriminator for this shape — always `money` here.","enum":["money"],"isRequired":true,"uniqueKey":"tags.items.[INDEX].schedule.entries.items.[INDEX].oneOf.4.breakpoint.kind","typeLabel":"enum\u003cstring>"},"unit":{"type":"string","description":"Unit qualifier for the value when the source text carried one (e.g. months, per square foot).","uniqueKey":"tags.items.[INDEX].schedule.entries.items.[INDEX].oneOf.4.breakpoint.unit","typeLabel":"string"},"capturedData":{"type":"string","description":"The value as captured during extraction, as text.","uniqueKey":"tags.items.[INDEX].schedule.entries.items.[INDEX].oneOf.4.breakpoint.capturedData","typeLabel":"string"},"ocrText":{"type":"string","description":"Raw source text the value was extracted from.","uniqueKey":"tags.items.[INDEX].schedule.entries.items.[INDEX].oneOf.4.breakpoint.ocrText","typeLabel":"string"},"value":{"type":"string","description":"Present when `kind` is `money`. Decimal string (not a JSON number) holding a BigDecimal rounded to 2 decimals — preserves cent precision through JSON, e.g. \"120000.00\".","uniqueKey":"tags.items.[INDEX].schedule.entries.items.[INDEX].oneOf.4.breakpoint.value","typeLabel":"string"},"currency":{"type":"string","description":"Currency code for the value (e.g. USD).","uniqueKey":"tags.items.[INDEX].schedule.entries.items.[INDEX].oneOf.4.breakpoint.currency","typeLabel":"string"}},"uniqueKey":"tags.items.[INDEX].schedule.entries.items.[INDEX].oneOf.4.breakpoint","typeLabel":"money · object"},"breakpointTerm":{"type":"string","description":"The breakpoint as captured in the source text (e.g. a natural breakpoint clause).","uniqueKey":"tags.items.[INDEX].schedule.entries.items.[INDEX].oneOf.4.breakpointTerm","typeLabel":"string"}},"uniqueKey":"tags.items.[INDEX].schedule.entries.items.[INDEX].oneOf.4","typeLabel":"PERCENT_RENT · object"}],"uniqueKey":"tags.items.[INDEX].schedule.entries.items.[INDEX]","typeLabel":"RENT · object | FEE · object | ABATEMENT · object | REFUND · object | PERCENT_RENT · object"},"uniqueKey":"tags.items.[INDEX].schedule.entries","typeLabel":"(RENT · object | FEE · object | ABATEMENT · object | REFUND · object | PERCENT_RENT · object)[]"}},"description":"Series data for terms that carry one — rent steps, abatement periods, deposit burn-downs. Branch on `schedule.kind`.","uniqueKey":"tags.items.[INDEX].schedule","typeLabel":"object"},"tagComponents":{"oneOf":[{"type":"object","title":"AUTO_RENEWAL","description":"Structured detail for COMPLEX tags (options and rights). Branch on its `kind`. Null for STANDARD tags.","required":["kind"],"properties":{"kind":{"type":"string","description":"Discriminator for this shape — always `AUTO_RENEWAL` here.","enum":["AUTO_RENEWAL"],"isRequired":true,"uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.0.kind","typeLabel":"enum\u003cstring>"},"rightStatus":{"type":"string","description":"Status of the option/right itself. Independent of the tag record's `lifecycleStatus` — the two are resolved independently and can disagree.","enum":["AVAILABLE","EXERCISED","STRICKEN","DECLINED","EXPIRED","UNKNOWN"],"uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.0.rightStatus","typeLabel":"enum\u003cstring>"},"rightIsStricken":{"type":"string","description":"Indicator the right was stricken from the lease via a Stricken clause; see `rightStatus` for the resolved state.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.0.rightIsStricken","typeLabel":"string"},"customLabel":{"type":"string","description":"Label denoting the option family this option belongs to. Options with the same `referenceId` should also shared the same `customLabel`","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.0.customLabel","typeLabel":"string"},"effectiveDateOfRight":{"oneOf":[{"type":"object","title":"number","description":"When the current version of the right takes effect. Defaults to the parent tag's own effective date, which arrives as `date` with no `unit` because nothing was captured for it; an `\u003coption>.effectiveDateOfRight` cor tag overrides that. Shape follows the unit it was captured with: a stated deadline arrives as `date`, a period the lease measures rather than dates arrives as `number` — read `unit` for what it counts — and a window as `dateRange`.","required":["kind"],"properties":{"kind":{"type":"string","description":"Discriminator for this shape — always `number` here.","enum":["number"],"isRequired":true,"uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.0.effectiveDateOfRight.oneOf.0.kind","typeLabel":"enum\u003cstring>"},"unit":{"type":"string","description":"Unit qualifier for the value when the source text carried one (e.g. months, per square foot).","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.0.effectiveDateOfRight.oneOf.0.unit","typeLabel":"string"},"capturedData":{"type":"string","description":"The value as captured during extraction, as text.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.0.effectiveDateOfRight.oneOf.0.capturedData","typeLabel":"string"},"ocrText":{"type":"string","description":"Raw source text the value was extracted from.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.0.effectiveDateOfRight.oneOf.0.ocrText","typeLabel":"string"},"value":{"type":"number","description":"The typed value. Its JSON type follows `kind`: a number for `number` and `percent`, a `yyyy-MM-dd` string for `date`, a decimal string for `money`, and the captured text for `text`. Omitted when `capturedData` could not be parsed into that type.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.0.effectiveDateOfRight.oneOf.0.value","typeLabel":"number"}},"uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.0.effectiveDateOfRight.oneOf.0","typeLabel":"number · object"},{"type":"object","title":"date","description":"When the current version of the right takes effect. Defaults to the parent tag's own effective date, which arrives as `date` with no `unit` because nothing was captured for it; an `\u003coption>.effectiveDateOfRight` cor tag overrides that. Shape follows the unit it was captured with: a stated deadline arrives as `date`, a period the lease measures rather than dates arrives as `number` — read `unit` for what it counts — and a window as `dateRange`.","required":["kind"],"properties":{"kind":{"type":"string","description":"Discriminator for this shape — always `date` here.","enum":["date"],"isRequired":true,"uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.0.effectiveDateOfRight.oneOf.1.kind","typeLabel":"enum\u003cstring>"},"unit":{"type":"string","description":"Unit qualifier for the value when the source text carried one (e.g. months, per square foot).","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.0.effectiveDateOfRight.oneOf.1.unit","typeLabel":"string"},"capturedData":{"type":"string","description":"The value as captured during extraction, as text.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.0.effectiveDateOfRight.oneOf.1.capturedData","typeLabel":"string"},"ocrText":{"type":"string","description":"Raw source text the value was extracted from.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.0.effectiveDateOfRight.oneOf.1.ocrText","typeLabel":"string"},"value":{"type":"string","description":"Present when `kind` is `date`. The captured date, `yyyy-MM-dd`. Omitted when the captured text was not parseable as a date; `capturedData` still holds what was captured.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.0.effectiveDateOfRight.oneOf.1.value","typeLabel":"string"}},"uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.0.effectiveDateOfRight.oneOf.1","typeLabel":"date · object"},{"type":"object","title":"dateRange","description":"When the current version of the right takes effect. Defaults to the parent tag's own effective date, which arrives as `date` with no `unit` because nothing was captured for it; an `\u003coption>.effectiveDateOfRight` cor tag overrides that. Shape follows the unit it was captured with: a stated deadline arrives as `date`, a period the lease measures rather than dates arrives as `number` — read `unit` for what it counts — and a window as `dateRange`.","required":["kind"],"properties":{"kind":{"type":"string","description":"Discriminator for this shape — always `dateRange` here.","enum":["dateRange"],"isRequired":true,"uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.0.effectiveDateOfRight.oneOf.2.kind","typeLabel":"enum\u003cstring>"},"unit":{"type":"string","description":"Unit qualifier for the value when the source text carried one (e.g. months, per square foot).","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.0.effectiveDateOfRight.oneOf.2.unit","typeLabel":"string"},"capturedData":{"type":"string","description":"The value as captured during extraction, as text.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.0.effectiveDateOfRight.oneOf.2.capturedData","typeLabel":"string"},"ocrText":{"type":"string","description":"Raw source text the value was extracted from.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.0.effectiveDateOfRight.oneOf.2.ocrText","typeLabel":"string"},"start":{"type":"string","description":"Present when `kind` is `dateRange`. Inclusive start of the range, `yyyy-MM-dd`. Omitted together with `end` when `capturedData` could not be split into a parseable pair.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.0.effectiveDateOfRight.oneOf.2.start","typeLabel":"string"},"end":{"type":"string","description":"Present when `kind` is `dateRange`. Inclusive end of the range, `yyyy-MM-dd`. Omitted together with `start` when `capturedData` could not be split into a parseable pair.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.0.effectiveDateOfRight.oneOf.2.end","typeLabel":"string"}},"uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.0.effectiveDateOfRight.oneOf.2","typeLabel":"dateRange · object"},{"type":"object","title":"text","description":"When the current version of the right takes effect. Defaults to the parent tag's own effective date, which arrives as `date` with no `unit` because nothing was captured for it; an `\u003coption>.effectiveDateOfRight` cor tag overrides that. Shape follows the unit it was captured with: a stated deadline arrives as `date`, a period the lease measures rather than dates arrives as `number` — read `unit` for what it counts — and a window as `dateRange`.","required":["kind"],"properties":{"kind":{"type":"string","description":"Discriminator for this shape — always `text` here.","enum":["text"],"isRequired":true,"uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.0.effectiveDateOfRight.oneOf.3.kind","typeLabel":"enum\u003cstring>"},"unit":{"type":"string","description":"Unit qualifier for the value when the source text carried one (e.g. months, per square foot).","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.0.effectiveDateOfRight.oneOf.3.unit","typeLabel":"string"},"capturedData":{"type":"string","description":"The value as captured during extraction, as text.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.0.effectiveDateOfRight.oneOf.3.capturedData","typeLabel":"string"},"ocrText":{"type":"string","description":"Raw source text the value was extracted from.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.0.effectiveDateOfRight.oneOf.3.ocrText","typeLabel":"string"},"value":{"type":"string","description":"The typed value. Its JSON type follows `kind`: a number for `number` and `percent`, a `yyyy-MM-dd` string for `date`, a decimal string for `money`, and the captured text for `text`. Omitted when `capturedData` could not be parsed into that type.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.0.effectiveDateOfRight.oneOf.3.value","typeLabel":"string"}},"uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.0.effectiveDateOfRight.oneOf.3","typeLabel":"text · object"}],"uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.0.effectiveDateOfRight","typeLabel":"number · object | date · object | dateRange · object | text · object"},"clause":{"type":"string","description":"Some Tags capture a simple clause rather than more in-depth data, represented here when that is the case.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.0.clause","typeLabel":"string"},"amendingTag":{"type":"object","description":"The same reference the Tag carries in its own `amendingTag` — both are built from this option's `referenceId`, so reading either gives the option this one amends. Repeated here so a caller working inside `tagComponents` does not have to climb back out to the Tag.","properties":{"effectiveDate":{"type":"string","description":"Effective date of the referenced Tag — the amended option, or the parent option when this sits on a component. Not the effective date of the Tag carrying this reference.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.0.amendingTag.effectiveDate","typeLabel":"string"},"amendedTagId":{"type":"string","description":"Id the Tag's `referenceId` points at: the earlier option this one amends, or the parent option container when this sits on a component Tag.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.0.amendingTag.amendedTagId","typeLabel":"string"}},"uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.0.amendingTag","typeLabel":"object"},"componentTags":{"type":"object","additionalProperties":{"type":"object","description":"A pointer to another Tag. These are the values of a component's `componentTags` map, one per constituent tag the option or right was assembled from, keyed by the part of that tag's `tagName` after the dot. The component surfaces those tags' values on its own fields; fetch a Tag by id with the [get tag endpoint](/api-reference/v2/tags/get-tag) when you need its citations, status, or raw captured text.","properties":{"id":{"type":"string","description":"Tag Id (UUID) of the referenced tag.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.0.componentTags.additionalProperties.id","typeLabel":"string"},"displayName":{"type":"string","description":"Display name of the referenced tag.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.0.componentTags.additionalProperties.displayName","typeLabel":"string"}},"uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.0.componentTags.additionalProperties","typeLabel":"object"},"description":"References to the constituent tags this component was assembled from, keyed by component field.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.0.componentTags","typeLabel":"object"},"advancedNoticePeriod":{"oneOf":[{"type":"object","title":"number","description":"Notice required to opt out before an automatic renewal takes effect; this right extends on its own, so the notice stops it rather than exercising it. Shape follows the unit the term was captured with: `number` for a plain count, `date` for a stated deadline, and `numberRange` or `dateRange` when the lease states a window rather than a single figure.","required":["kind"],"properties":{"kind":{"type":"string","description":"Discriminator for this shape — always `number` here.","enum":["number"],"isRequired":true,"uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.0.advancedNoticePeriod.oneOf.0.kind","typeLabel":"enum\u003cstring>"},"unit":{"type":"string","description":"Unit qualifier for the value when the source text carried one (e.g. months, per square foot).","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.0.advancedNoticePeriod.oneOf.0.unit","typeLabel":"string"},"capturedData":{"type":"string","description":"The value as captured during extraction, as text.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.0.advancedNoticePeriod.oneOf.0.capturedData","typeLabel":"string"},"ocrText":{"type":"string","description":"Raw source text the value was extracted from.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.0.advancedNoticePeriod.oneOf.0.ocrText","typeLabel":"string"},"value":{"type":"number","description":"The typed value. Its JSON type follows `kind`: a number for `number` and `percent`, a `yyyy-MM-dd` string for `date`, a decimal string for `money`, and the captured text for `text`. Omitted when `capturedData` could not be parsed into that type.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.0.advancedNoticePeriod.oneOf.0.value","typeLabel":"number"}},"uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.0.advancedNoticePeriod.oneOf.0","typeLabel":"number · object"},{"type":"object","title":"date","description":"Notice required to opt out before an automatic renewal takes effect; this right extends on its own, so the notice stops it rather than exercising it. Shape follows the unit the term was captured with: `number` for a plain count, `date` for a stated deadline, and `numberRange` or `dateRange` when the lease states a window rather than a single figure.","required":["kind"],"properties":{"kind":{"type":"string","description":"Discriminator for this shape — always `date` here.","enum":["date"],"isRequired":true,"uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.0.advancedNoticePeriod.oneOf.1.kind","typeLabel":"enum\u003cstring>"},"unit":{"type":"string","description":"Unit qualifier for the value when the source text carried one (e.g. months, per square foot).","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.0.advancedNoticePeriod.oneOf.1.unit","typeLabel":"string"},"capturedData":{"type":"string","description":"The value as captured during extraction, as text.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.0.advancedNoticePeriod.oneOf.1.capturedData","typeLabel":"string"},"ocrText":{"type":"string","description":"Raw source text the value was extracted from.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.0.advancedNoticePeriod.oneOf.1.ocrText","typeLabel":"string"},"value":{"type":"string","description":"Present when `kind` is `date`. The captured date, `yyyy-MM-dd`. Omitted when the captured text was not parseable as a date; `capturedData` still holds what was captured.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.0.advancedNoticePeriod.oneOf.1.value","typeLabel":"string"}},"uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.0.advancedNoticePeriod.oneOf.1","typeLabel":"date · object"},{"type":"object","title":"numberRange","description":"Notice required to opt out before an automatic renewal takes effect; this right extends on its own, so the notice stops it rather than exercising it. Shape follows the unit the term was captured with: `number` for a plain count, `date` for a stated deadline, and `numberRange` or `dateRange` when the lease states a window rather than a single figure.","required":["kind"],"properties":{"kind":{"type":"string","description":"Discriminator for this shape — always `numberRange` here.","enum":["numberRange"],"isRequired":true,"uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.0.advancedNoticePeriod.oneOf.2.kind","typeLabel":"enum\u003cstring>"},"unit":{"type":"string","description":"Unit qualifier for the value when the source text carried one (e.g. months, per square foot).","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.0.advancedNoticePeriod.oneOf.2.unit","typeLabel":"string"},"capturedData":{"type":"string","description":"The value as captured during extraction, as text.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.0.advancedNoticePeriod.oneOf.2.capturedData","typeLabel":"string"},"ocrText":{"type":"string","description":"Raw source text the value was extracted from.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.0.advancedNoticePeriod.oneOf.2.ocrText","typeLabel":"string"},"start":{"type":"integer","format":"int32","description":"Inclusive start of the range: a `yyyy-MM-dd` string for `dateRange`, an integer for `numberRange`. Omitted together with `end` when `capturedData` could not be split into a parseable pair.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.0.advancedNoticePeriod.oneOf.2.start","typeLabel":"integer\u003cint32>"},"end":{"type":"integer","format":"int32","description":"Inclusive end of the range: a `yyyy-MM-dd` string for `dateRange`, an integer for `numberRange`. Omitted together with `start` when `capturedData` could not be split into a parseable pair.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.0.advancedNoticePeriod.oneOf.2.end","typeLabel":"integer\u003cint32>"}},"uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.0.advancedNoticePeriod.oneOf.2","typeLabel":"numberRange · object"},{"type":"object","title":"dateRange","description":"Notice required to opt out before an automatic renewal takes effect; this right extends on its own, so the notice stops it rather than exercising it. Shape follows the unit the term was captured with: `number` for a plain count, `date` for a stated deadline, and `numberRange` or `dateRange` when the lease states a window rather than a single figure.","required":["kind"],"properties":{"kind":{"type":"string","description":"Discriminator for this shape — always `dateRange` here.","enum":["dateRange"],"isRequired":true,"uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.0.advancedNoticePeriod.oneOf.3.kind","typeLabel":"enum\u003cstring>"},"unit":{"type":"string","description":"Unit qualifier for the value when the source text carried one (e.g. months, per square foot).","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.0.advancedNoticePeriod.oneOf.3.unit","typeLabel":"string"},"capturedData":{"type":"string","description":"The value as captured during extraction, as text.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.0.advancedNoticePeriod.oneOf.3.capturedData","typeLabel":"string"},"ocrText":{"type":"string","description":"Raw source text the value was extracted from.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.0.advancedNoticePeriod.oneOf.3.ocrText","typeLabel":"string"},"start":{"type":"string","description":"Present when `kind` is `dateRange`. Inclusive start of the range, `yyyy-MM-dd`. Omitted together with `end` when `capturedData` could not be split into a parseable pair.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.0.advancedNoticePeriod.oneOf.3.start","typeLabel":"string"},"end":{"type":"string","description":"Present when `kind` is `dateRange`. Inclusive end of the range, `yyyy-MM-dd`. Omitted together with `start` when `capturedData` could not be split into a parseable pair.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.0.advancedNoticePeriod.oneOf.3.end","typeLabel":"string"}},"uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.0.advancedNoticePeriod.oneOf.3","typeLabel":"dateRange · object"},{"type":"object","title":"text","description":"Notice required to opt out before an automatic renewal takes effect; this right extends on its own, so the notice stops it rather than exercising it. Shape follows the unit the term was captured with: `number` for a plain count, `date` for a stated deadline, and `numberRange` or `dateRange` when the lease states a window rather than a single figure.","required":["kind"],"properties":{"kind":{"type":"string","description":"Discriminator for this shape — always `text` here.","enum":["text"],"isRequired":true,"uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.0.advancedNoticePeriod.oneOf.4.kind","typeLabel":"enum\u003cstring>"},"unit":{"type":"string","description":"Unit qualifier for the value when the source text carried one (e.g. months, per square foot).","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.0.advancedNoticePeriod.oneOf.4.unit","typeLabel":"string"},"capturedData":{"type":"string","description":"The value as captured during extraction, as text.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.0.advancedNoticePeriod.oneOf.4.capturedData","typeLabel":"string"},"ocrText":{"type":"string","description":"Raw source text the value was extracted from.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.0.advancedNoticePeriod.oneOf.4.ocrText","typeLabel":"string"},"value":{"type":"string","description":"The typed value. Its JSON type follows `kind`: a number for `number` and `percent`, a `yyyy-MM-dd` string for `date`, a decimal string for `money`, and the captured text for `text`. Omitted when `capturedData` could not be parsed into that type.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.0.advancedNoticePeriod.oneOf.4.value","typeLabel":"string"}},"uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.0.advancedNoticePeriod.oneOf.4","typeLabel":"text · object"}],"uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.0.advancedNoticePeriod","typeLabel":"number · object | date · object | numberRange · object | dateRange · object | text · object"},"autoRenewalTerm":{"oneOf":[{"type":"object","title":"number","description":"Length of each automatic renewal period. Shape follows the unit the term was captured with: a stated length arrives as `number` — read `unit` for what it counts — and a period the lease words rather than counts arrives as `text`.","required":["kind"],"properties":{"kind":{"type":"string","description":"Discriminator for this shape — always `number` here.","enum":["number"],"isRequired":true,"uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.0.autoRenewalTerm.oneOf.0.kind","typeLabel":"enum\u003cstring>"},"unit":{"type":"string","description":"Unit qualifier for the value when the source text carried one (e.g. months, per square foot).","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.0.autoRenewalTerm.oneOf.0.unit","typeLabel":"string"},"capturedData":{"type":"string","description":"The value as captured during extraction, as text.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.0.autoRenewalTerm.oneOf.0.capturedData","typeLabel":"string"},"ocrText":{"type":"string","description":"Raw source text the value was extracted from.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.0.autoRenewalTerm.oneOf.0.ocrText","typeLabel":"string"},"value":{"type":"number","description":"The typed value. Its JSON type follows `kind`: a number for `number` and `percent`, a `yyyy-MM-dd` string for `date`, a decimal string for `money`, and the captured text for `text`. Omitted when `capturedData` could not be parsed into that type.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.0.autoRenewalTerm.oneOf.0.value","typeLabel":"number"}},"uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.0.autoRenewalTerm.oneOf.0","typeLabel":"number · object"},{"type":"object","title":"text","description":"Length of each automatic renewal period. Shape follows the unit the term was captured with: a stated length arrives as `number` — read `unit` for what it counts — and a period the lease words rather than counts arrives as `text`.","required":["kind"],"properties":{"kind":{"type":"string","description":"Discriminator for this shape — always `text` here.","enum":["text"],"isRequired":true,"uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.0.autoRenewalTerm.oneOf.1.kind","typeLabel":"enum\u003cstring>"},"unit":{"type":"string","description":"Unit qualifier for the value when the source text carried one (e.g. months, per square foot).","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.0.autoRenewalTerm.oneOf.1.unit","typeLabel":"string"},"capturedData":{"type":"string","description":"The value as captured during extraction, as text.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.0.autoRenewalTerm.oneOf.1.capturedData","typeLabel":"string"},"ocrText":{"type":"string","description":"Raw source text the value was extracted from.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.0.autoRenewalTerm.oneOf.1.ocrText","typeLabel":"string"},"value":{"type":"string","description":"The typed value. Its JSON type follows `kind`: a number for `number` and `percent`, a `yyyy-MM-dd` string for `date`, a decimal string for `money`, and the captured text for `text`. Omitted when `capturedData` could not be parsed into that type.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.0.autoRenewalTerm.oneOf.1.value","typeLabel":"string"}},"uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.0.autoRenewalTerm.oneOf.1","typeLabel":"text · object"}],"uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.0.autoRenewalTerm","typeLabel":"number · object | text · object"},"autoRenewalPeriods":{"oneOf":[{"type":"object","title":"number","description":"Number of automatic renewals, when limited. Shape follows the unit it was captured with: a stated count arrives as `number` with unit `period`, and a count the lease words rather than states arrives as `text`.","required":["kind"],"properties":{"kind":{"type":"string","description":"Discriminator for this shape — always `number` here.","enum":["number"],"isRequired":true,"uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.0.autoRenewalPeriods.oneOf.0.kind","typeLabel":"enum\u003cstring>"},"unit":{"type":"string","description":"Unit qualifier for the value when the source text carried one (e.g. months, per square foot).","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.0.autoRenewalPeriods.oneOf.0.unit","typeLabel":"string"},"capturedData":{"type":"string","description":"The value as captured during extraction, as text.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.0.autoRenewalPeriods.oneOf.0.capturedData","typeLabel":"string"},"ocrText":{"type":"string","description":"Raw source text the value was extracted from.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.0.autoRenewalPeriods.oneOf.0.ocrText","typeLabel":"string"},"value":{"type":"number","description":"The typed value. Its JSON type follows `kind`: a number for `number` and `percent`, a `yyyy-MM-dd` string for `date`, a decimal string for `money`, and the captured text for `text`. Omitted when `capturedData` could not be parsed into that type.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.0.autoRenewalPeriods.oneOf.0.value","typeLabel":"number"}},"uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.0.autoRenewalPeriods.oneOf.0","typeLabel":"number · object"},{"type":"object","title":"text","description":"Number of automatic renewals, when limited. Shape follows the unit it was captured with: a stated count arrives as `number` with unit `period`, and a count the lease words rather than states arrives as `text`.","required":["kind"],"properties":{"kind":{"type":"string","description":"Discriminator for this shape — always `text` here.","enum":["text"],"isRequired":true,"uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.0.autoRenewalPeriods.oneOf.1.kind","typeLabel":"enum\u003cstring>"},"unit":{"type":"string","description":"Unit qualifier for the value when the source text carried one (e.g. months, per square foot).","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.0.autoRenewalPeriods.oneOf.1.unit","typeLabel":"string"},"capturedData":{"type":"string","description":"The value as captured during extraction, as text.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.0.autoRenewalPeriods.oneOf.1.capturedData","typeLabel":"string"},"ocrText":{"type":"string","description":"Raw source text the value was extracted from.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.0.autoRenewalPeriods.oneOf.1.ocrText","typeLabel":"string"},"value":{"type":"string","description":"The typed value. Its JSON type follows `kind`: a number for `number` and `percent`, a `yyyy-MM-dd` string for `date`, a decimal string for `money`, and the captured text for `text`. Omitted when `capturedData` could not be parsed into that type.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.0.autoRenewalPeriods.oneOf.1.value","typeLabel":"string"}},"uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.0.autoRenewalPeriods.oneOf.1","typeLabel":"text · object"}],"uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.0.autoRenewalPeriods","typeLabel":"number · object | text · object"},"autoRenewalRate":{"oneOf":[{"type":"object","title":"money","description":"Rent rate for the automatic renewal period, when stated. Shape follows the unit the amount was captured with: a stated amount arrives as `money` with the lease's currency, and an amount the lease describes rather than states arrives as `text`, with the wording in `capturedData`.","required":["kind"],"properties":{"kind":{"type":"string","description":"Discriminator for this shape — always `money` here.","enum":["money"],"isRequired":true,"uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.0.autoRenewalRate.oneOf.0.kind","typeLabel":"enum\u003cstring>"},"unit":{"type":"string","description":"Unit qualifier for the value when the source text carried one (e.g. months, per square foot).","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.0.autoRenewalRate.oneOf.0.unit","typeLabel":"string"},"capturedData":{"type":"string","description":"The value as captured during extraction, as text.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.0.autoRenewalRate.oneOf.0.capturedData","typeLabel":"string"},"ocrText":{"type":"string","description":"Raw source text the value was extracted from.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.0.autoRenewalRate.oneOf.0.ocrText","typeLabel":"string"},"value":{"type":"string","description":"Present when `kind` is `money`. Decimal string (not a JSON number) holding a BigDecimal rounded to 2 decimals — preserves cent precision through JSON, e.g. \"120000.00\".","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.0.autoRenewalRate.oneOf.0.value","typeLabel":"string"},"currency":{"type":"string","description":"Currency code for the value (e.g. USD).","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.0.autoRenewalRate.oneOf.0.currency","typeLabel":"string"}},"uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.0.autoRenewalRate.oneOf.0","typeLabel":"money · object"},{"type":"object","title":"text","description":"Rent rate for the automatic renewal period, when stated. Shape follows the unit the amount was captured with: a stated amount arrives as `money` with the lease's currency, and an amount the lease describes rather than states arrives as `text`, with the wording in `capturedData`.","required":["kind"],"properties":{"kind":{"type":"string","description":"Discriminator for this shape — always `text` here.","enum":["text"],"isRequired":true,"uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.0.autoRenewalRate.oneOf.1.kind","typeLabel":"enum\u003cstring>"},"unit":{"type":"string","description":"Unit qualifier for the value when the source text carried one (e.g. months, per square foot).","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.0.autoRenewalRate.oneOf.1.unit","typeLabel":"string"},"capturedData":{"type":"string","description":"The value as captured during extraction, as text.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.0.autoRenewalRate.oneOf.1.capturedData","typeLabel":"string"},"ocrText":{"type":"string","description":"Raw source text the value was extracted from.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.0.autoRenewalRate.oneOf.1.ocrText","typeLabel":"string"},"value":{"type":"string","description":"The typed value. Its JSON type follows `kind`: a number for `number` and `percent`, a `yyyy-MM-dd` string for `date`, a decimal string for `money`, and the captured text for `text`. Omitted when `capturedData` could not be parsed into that type.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.0.autoRenewalRate.oneOf.1.value","typeLabel":"string"}},"uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.0.autoRenewalRate.oneOf.1","typeLabel":"text · object"}],"uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.0.autoRenewalRate","typeLabel":"money · object | text · object"},"autoRenewalRateBump":{"oneOf":[{"type":"object","title":"percent","description":"Rate increase applied at each automatic renewal, when stated. A percentage arrives as `percent`, carried as the percentage itself; a stated dollar increase arrives as `money` with the lease's currency.","required":["kind"],"properties":{"kind":{"type":"string","description":"Discriminator for this shape — always `percent` here.","enum":["percent"],"isRequired":true,"uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.0.autoRenewalRateBump.oneOf.0.kind","typeLabel":"enum\u003cstring>"},"unit":{"type":"string","description":"Unit qualifier for the value when the source text carried one (e.g. months, per square foot).","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.0.autoRenewalRateBump.oneOf.0.unit","typeLabel":"string"},"capturedData":{"type":"string","description":"The value as captured during extraction, as text.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.0.autoRenewalRateBump.oneOf.0.capturedData","typeLabel":"string"},"ocrText":{"type":"string","description":"Raw source text the value was extracted from.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.0.autoRenewalRateBump.oneOf.0.ocrText","typeLabel":"string"},"value":{"type":"number","description":"The typed value. Its JSON type follows `kind`: a number for `number` and `percent`, a `yyyy-MM-dd` string for `date`, a decimal string for `money`, and the captured text for `text`. Omitted when `capturedData` could not be parsed into that type.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.0.autoRenewalRateBump.oneOf.0.value","typeLabel":"number"}},"uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.0.autoRenewalRateBump.oneOf.0","typeLabel":"percent · object"},{"type":"object","title":"money","description":"Rate increase applied at each automatic renewal, when stated. A percentage arrives as `percent`, carried as the percentage itself; a stated dollar increase arrives as `money` with the lease's currency.","required":["kind"],"properties":{"kind":{"type":"string","description":"Discriminator for this shape — always `money` here.","enum":["money"],"isRequired":true,"uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.0.autoRenewalRateBump.oneOf.1.kind","typeLabel":"enum\u003cstring>"},"unit":{"type":"string","description":"Unit qualifier for the value when the source text carried one (e.g. months, per square foot).","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.0.autoRenewalRateBump.oneOf.1.unit","typeLabel":"string"},"capturedData":{"type":"string","description":"The value as captured during extraction, as text.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.0.autoRenewalRateBump.oneOf.1.capturedData","typeLabel":"string"},"ocrText":{"type":"string","description":"Raw source text the value was extracted from.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.0.autoRenewalRateBump.oneOf.1.ocrText","typeLabel":"string"},"value":{"type":"string","description":"Present when `kind` is `money`. Decimal string (not a JSON number) holding a BigDecimal rounded to 2 decimals — preserves cent precision through JSON, e.g. \"120000.00\".","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.0.autoRenewalRateBump.oneOf.1.value","typeLabel":"string"},"currency":{"type":"string","description":"Currency code for the value (e.g. USD).","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.0.autoRenewalRateBump.oneOf.1.currency","typeLabel":"string"}},"uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.0.autoRenewalRateBump.oneOf.1","typeLabel":"money · object"},{"type":"object","title":"text","description":"Rate increase applied at each automatic renewal, when stated. A percentage arrives as `percent`, carried as the percentage itself; a stated dollar increase arrives as `money` with the lease's currency.","required":["kind"],"properties":{"kind":{"type":"string","description":"Discriminator for this shape — always `text` here.","enum":["text"],"isRequired":true,"uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.0.autoRenewalRateBump.oneOf.2.kind","typeLabel":"enum\u003cstring>"},"unit":{"type":"string","description":"Unit qualifier for the value when the source text carried one (e.g. months, per square foot).","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.0.autoRenewalRateBump.oneOf.2.unit","typeLabel":"string"},"capturedData":{"type":"string","description":"The value as captured during extraction, as text.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.0.autoRenewalRateBump.oneOf.2.capturedData","typeLabel":"string"},"ocrText":{"type":"string","description":"Raw source text the value was extracted from.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.0.autoRenewalRateBump.oneOf.2.ocrText","typeLabel":"string"},"value":{"type":"string","description":"The typed value. Its JSON type follows `kind`: a number for `number` and `percent`, a `yyyy-MM-dd` string for `date`, a decimal string for `money`, and the captured text for `text`. Omitted when `capturedData` could not be parsed into that type.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.0.autoRenewalRateBump.oneOf.2.value","typeLabel":"string"}},"uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.0.autoRenewalRateBump.oneOf.2","typeLabel":"text · object"}],"uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.0.autoRenewalRateBump","typeLabel":"percent · object | money · object | text · object"},"effectivePeriod":{"type":"object","title":"dateRange","description":"Date range during which the auto-renewal provision applies.","required":["kind"],"properties":{"kind":{"type":"string","description":"Discriminator for this shape — always `dateRange` here.","enum":["dateRange"],"isRequired":true,"uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.0.effectivePeriod.kind","typeLabel":"enum\u003cstring>"},"unit":{"type":"string","description":"Unit qualifier for the value when the source text carried one (e.g. months, per square foot).","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.0.effectivePeriod.unit","typeLabel":"string"},"capturedData":{"type":"string","description":"The value as captured during extraction, as text.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.0.effectivePeriod.capturedData","typeLabel":"string"},"ocrText":{"type":"string","description":"Raw source text the value was extracted from.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.0.effectivePeriod.ocrText","typeLabel":"string"},"start":{"type":"string","description":"Present when `kind` is `dateRange`. Inclusive start of the range, `yyyy-MM-dd`. Omitted together with `end` when `capturedData` could not be split into a parseable pair.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.0.effectivePeriod.start","typeLabel":"string"},"end":{"type":"string","description":"Present when `kind` is `dateRange`. Inclusive end of the range, `yyyy-MM-dd`. Omitted together with `start` when `capturedData` could not be split into a parseable pair.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.0.effectivePeriod.end","typeLabel":"string"}},"uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.0.effectivePeriod","typeLabel":"dateRange · object"}},"uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.0","typeLabel":"AUTO_RENEWAL · object"},{"type":"object","title":"CONTRACTION","description":"Structured detail for COMPLEX tags (options and rights). Branch on its `kind`. Null for STANDARD tags.","required":["kind"],"properties":{"kind":{"type":"string","description":"Discriminator for this shape — always `CONTRACTION` here.","enum":["CONTRACTION"],"isRequired":true,"uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.1.kind","typeLabel":"enum\u003cstring>"},"rightStatus":{"type":"string","description":"Status of the option/right itself. Independent of the tag record's `lifecycleStatus` — the two are resolved independently and can disagree.","enum":["AVAILABLE","EXERCISED","STRICKEN","DECLINED","EXPIRED","UNKNOWN"],"uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.1.rightStatus","typeLabel":"enum\u003cstring>"},"rightIsStricken":{"type":"string","description":"Indicator the right was stricken from the lease via a Stricken clause; see `rightStatus` for the resolved state.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.1.rightIsStricken","typeLabel":"string"},"customLabel":{"type":"string","description":"Label denoting the option family this option belongs to. Options with the same `referenceId` should also shared the same `customLabel`","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.1.customLabel","typeLabel":"string"},"effectiveDateOfRight":{"oneOf":[{"type":"object","title":"number","description":"When the current version of the right takes effect. Defaults to the parent tag's own effective date, which arrives as `date` with no `unit` because nothing was captured for it; an `\u003coption>.effectiveDateOfRight` cor tag overrides that. Shape follows the unit it was captured with: a stated deadline arrives as `date`, a period the lease measures rather than dates arrives as `number` — read `unit` for what it counts — and a window as `dateRange`.","required":["kind"],"properties":{"kind":{"type":"string","description":"Discriminator for this shape — always `number` here.","enum":["number"],"isRequired":true,"uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.1.effectiveDateOfRight.oneOf.0.kind","typeLabel":"enum\u003cstring>"},"unit":{"type":"string","description":"Unit qualifier for the value when the source text carried one (e.g. months, per square foot).","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.1.effectiveDateOfRight.oneOf.0.unit","typeLabel":"string"},"capturedData":{"type":"string","description":"The value as captured during extraction, as text.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.1.effectiveDateOfRight.oneOf.0.capturedData","typeLabel":"string"},"ocrText":{"type":"string","description":"Raw source text the value was extracted from.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.1.effectiveDateOfRight.oneOf.0.ocrText","typeLabel":"string"},"value":{"type":"number","description":"The typed value. Its JSON type follows `kind`: a number for `number` and `percent`, a `yyyy-MM-dd` string for `date`, a decimal string for `money`, and the captured text for `text`. Omitted when `capturedData` could not be parsed into that type.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.1.effectiveDateOfRight.oneOf.0.value","typeLabel":"number"}},"uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.1.effectiveDateOfRight.oneOf.0","typeLabel":"number · object"},{"type":"object","title":"date","description":"When the current version of the right takes effect. Defaults to the parent tag's own effective date, which arrives as `date` with no `unit` because nothing was captured for it; an `\u003coption>.effectiveDateOfRight` cor tag overrides that. Shape follows the unit it was captured with: a stated deadline arrives as `date`, a period the lease measures rather than dates arrives as `number` — read `unit` for what it counts — and a window as `dateRange`.","required":["kind"],"properties":{"kind":{"type":"string","description":"Discriminator for this shape — always `date` here.","enum":["date"],"isRequired":true,"uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.1.effectiveDateOfRight.oneOf.1.kind","typeLabel":"enum\u003cstring>"},"unit":{"type":"string","description":"Unit qualifier for the value when the source text carried one (e.g. months, per square foot).","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.1.effectiveDateOfRight.oneOf.1.unit","typeLabel":"string"},"capturedData":{"type":"string","description":"The value as captured during extraction, as text.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.1.effectiveDateOfRight.oneOf.1.capturedData","typeLabel":"string"},"ocrText":{"type":"string","description":"Raw source text the value was extracted from.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.1.effectiveDateOfRight.oneOf.1.ocrText","typeLabel":"string"},"value":{"type":"string","description":"Present when `kind` is `date`. The captured date, `yyyy-MM-dd`. Omitted when the captured text was not parseable as a date; `capturedData` still holds what was captured.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.1.effectiveDateOfRight.oneOf.1.value","typeLabel":"string"}},"uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.1.effectiveDateOfRight.oneOf.1","typeLabel":"date · object"},{"type":"object","title":"dateRange","description":"When the current version of the right takes effect. Defaults to the parent tag's own effective date, which arrives as `date` with no `unit` because nothing was captured for it; an `\u003coption>.effectiveDateOfRight` cor tag overrides that. Shape follows the unit it was captured with: a stated deadline arrives as `date`, a period the lease measures rather than dates arrives as `number` — read `unit` for what it counts — and a window as `dateRange`.","required":["kind"],"properties":{"kind":{"type":"string","description":"Discriminator for this shape — always `dateRange` here.","enum":["dateRange"],"isRequired":true,"uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.1.effectiveDateOfRight.oneOf.2.kind","typeLabel":"enum\u003cstring>"},"unit":{"type":"string","description":"Unit qualifier for the value when the source text carried one (e.g. months, per square foot).","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.1.effectiveDateOfRight.oneOf.2.unit","typeLabel":"string"},"capturedData":{"type":"string","description":"The value as captured during extraction, as text.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.1.effectiveDateOfRight.oneOf.2.capturedData","typeLabel":"string"},"ocrText":{"type":"string","description":"Raw source text the value was extracted from.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.1.effectiveDateOfRight.oneOf.2.ocrText","typeLabel":"string"},"start":{"type":"string","description":"Present when `kind` is `dateRange`. Inclusive start of the range, `yyyy-MM-dd`. Omitted together with `end` when `capturedData` could not be split into a parseable pair.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.1.effectiveDateOfRight.oneOf.2.start","typeLabel":"string"},"end":{"type":"string","description":"Present when `kind` is `dateRange`. Inclusive end of the range, `yyyy-MM-dd`. Omitted together with `start` when `capturedData` could not be split into a parseable pair.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.1.effectiveDateOfRight.oneOf.2.end","typeLabel":"string"}},"uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.1.effectiveDateOfRight.oneOf.2","typeLabel":"dateRange · object"},{"type":"object","title":"text","description":"When the current version of the right takes effect. Defaults to the parent tag's own effective date, which arrives as `date` with no `unit` because nothing was captured for it; an `\u003coption>.effectiveDateOfRight` cor tag overrides that. Shape follows the unit it was captured with: a stated deadline arrives as `date`, a period the lease measures rather than dates arrives as `number` — read `unit` for what it counts — and a window as `dateRange`.","required":["kind"],"properties":{"kind":{"type":"string","description":"Discriminator for this shape — always `text` here.","enum":["text"],"isRequired":true,"uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.1.effectiveDateOfRight.oneOf.3.kind","typeLabel":"enum\u003cstring>"},"unit":{"type":"string","description":"Unit qualifier for the value when the source text carried one (e.g. months, per square foot).","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.1.effectiveDateOfRight.oneOf.3.unit","typeLabel":"string"},"capturedData":{"type":"string","description":"The value as captured during extraction, as text.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.1.effectiveDateOfRight.oneOf.3.capturedData","typeLabel":"string"},"ocrText":{"type":"string","description":"Raw source text the value was extracted from.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.1.effectiveDateOfRight.oneOf.3.ocrText","typeLabel":"string"},"value":{"type":"string","description":"The typed value. Its JSON type follows `kind`: a number for `number` and `percent`, a `yyyy-MM-dd` string for `date`, a decimal string for `money`, and the captured text for `text`. Omitted when `capturedData` could not be parsed into that type.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.1.effectiveDateOfRight.oneOf.3.value","typeLabel":"string"}},"uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.1.effectiveDateOfRight.oneOf.3","typeLabel":"text · object"}],"uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.1.effectiveDateOfRight","typeLabel":"number · object | date · object | dateRange · object | text · object"},"clause":{"type":"string","description":"Some Tags capture a simple clause rather than more in-depth data, represented here when that is the case.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.1.clause","typeLabel":"string"},"amendingTag":{"type":"object","description":"The same reference the Tag carries in its own `amendingTag` — both are built from this option's `referenceId`, so reading either gives the option this one amends. Repeated here so a caller working inside `tagComponents` does not have to climb back out to the Tag.","properties":{"effectiveDate":{"type":"string","description":"Effective date of the referenced Tag — the amended option, or the parent option when this sits on a component. Not the effective date of the Tag carrying this reference.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.1.amendingTag.effectiveDate","typeLabel":"string"},"amendedTagId":{"type":"string","description":"Id the Tag's `referenceId` points at: the earlier option this one amends, or the parent option container when this sits on a component Tag.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.1.amendingTag.amendedTagId","typeLabel":"string"}},"uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.1.amendingTag","typeLabel":"object"},"componentTags":{"type":"object","additionalProperties":{"type":"object","description":"A pointer to another Tag. These are the values of a component's `componentTags` map, one per constituent tag the option or right was assembled from, keyed by the part of that tag's `tagName` after the dot. The component surfaces those tags' values on its own fields; fetch a Tag by id with the [get tag endpoint](/api-reference/v2/tags/get-tag) when you need its citations, status, or raw captured text.","properties":{"id":{"type":"string","description":"Tag Id (UUID) of the referenced tag.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.1.componentTags.additionalProperties.id","typeLabel":"string"},"displayName":{"type":"string","description":"Display name of the referenced tag.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.1.componentTags.additionalProperties.displayName","typeLabel":"string"}},"uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.1.componentTags.additionalProperties","typeLabel":"object"},"description":"References to the constituent tags this component was assembled from, keyed by component field.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.1.componentTags","typeLabel":"object"},"advancedNoticePeriod":{"oneOf":[{"type":"object","title":"number","description":"Notice the tenant must give to exercise the contraction right. Shape follows the unit the term was captured with: `number` for a plain count, `date` for a stated deadline, and `numberRange` or `dateRange` when the lease states a window rather than a single figure.","required":["kind"],"properties":{"kind":{"type":"string","description":"Discriminator for this shape — always `number` here.","enum":["number"],"isRequired":true,"uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.1.advancedNoticePeriod.oneOf.0.kind","typeLabel":"enum\u003cstring>"},"unit":{"type":"string","description":"Unit qualifier for the value when the source text carried one (e.g. months, per square foot).","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.1.advancedNoticePeriod.oneOf.0.unit","typeLabel":"string"},"capturedData":{"type":"string","description":"The value as captured during extraction, as text.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.1.advancedNoticePeriod.oneOf.0.capturedData","typeLabel":"string"},"ocrText":{"type":"string","description":"Raw source text the value was extracted from.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.1.advancedNoticePeriod.oneOf.0.ocrText","typeLabel":"string"},"value":{"type":"number","description":"The typed value. Its JSON type follows `kind`: a number for `number` and `percent`, a `yyyy-MM-dd` string for `date`, a decimal string for `money`, and the captured text for `text`. Omitted when `capturedData` could not be parsed into that type.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.1.advancedNoticePeriod.oneOf.0.value","typeLabel":"number"}},"uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.1.advancedNoticePeriod.oneOf.0","typeLabel":"number · object"},{"type":"object","title":"date","description":"Notice the tenant must give to exercise the contraction right. Shape follows the unit the term was captured with: `number` for a plain count, `date` for a stated deadline, and `numberRange` or `dateRange` when the lease states a window rather than a single figure.","required":["kind"],"properties":{"kind":{"type":"string","description":"Discriminator for this shape — always `date` here.","enum":["date"],"isRequired":true,"uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.1.advancedNoticePeriod.oneOf.1.kind","typeLabel":"enum\u003cstring>"},"unit":{"type":"string","description":"Unit qualifier for the value when the source text carried one (e.g. months, per square foot).","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.1.advancedNoticePeriod.oneOf.1.unit","typeLabel":"string"},"capturedData":{"type":"string","description":"The value as captured during extraction, as text.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.1.advancedNoticePeriod.oneOf.1.capturedData","typeLabel":"string"},"ocrText":{"type":"string","description":"Raw source text the value was extracted from.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.1.advancedNoticePeriod.oneOf.1.ocrText","typeLabel":"string"},"value":{"type":"string","description":"Present when `kind` is `date`. The captured date, `yyyy-MM-dd`. Omitted when the captured text was not parseable as a date; `capturedData` still holds what was captured.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.1.advancedNoticePeriod.oneOf.1.value","typeLabel":"string"}},"uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.1.advancedNoticePeriod.oneOf.1","typeLabel":"date · object"},{"type":"object","title":"numberRange","description":"Notice the tenant must give to exercise the contraction right. Shape follows the unit the term was captured with: `number` for a plain count, `date` for a stated deadline, and `numberRange` or `dateRange` when the lease states a window rather than a single figure.","required":["kind"],"properties":{"kind":{"type":"string","description":"Discriminator for this shape — always `numberRange` here.","enum":["numberRange"],"isRequired":true,"uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.1.advancedNoticePeriod.oneOf.2.kind","typeLabel":"enum\u003cstring>"},"unit":{"type":"string","description":"Unit qualifier for the value when the source text carried one (e.g. months, per square foot).","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.1.advancedNoticePeriod.oneOf.2.unit","typeLabel":"string"},"capturedData":{"type":"string","description":"The value as captured during extraction, as text.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.1.advancedNoticePeriod.oneOf.2.capturedData","typeLabel":"string"},"ocrText":{"type":"string","description":"Raw source text the value was extracted from.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.1.advancedNoticePeriod.oneOf.2.ocrText","typeLabel":"string"},"start":{"type":"integer","format":"int32","description":"Inclusive start of the range: a `yyyy-MM-dd` string for `dateRange`, an integer for `numberRange`. Omitted together with `end` when `capturedData` could not be split into a parseable pair.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.1.advancedNoticePeriod.oneOf.2.start","typeLabel":"integer\u003cint32>"},"end":{"type":"integer","format":"int32","description":"Inclusive end of the range: a `yyyy-MM-dd` string for `dateRange`, an integer for `numberRange`. Omitted together with `start` when `capturedData` could not be split into a parseable pair.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.1.advancedNoticePeriod.oneOf.2.end","typeLabel":"integer\u003cint32>"}},"uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.1.advancedNoticePeriod.oneOf.2","typeLabel":"numberRange · object"},{"type":"object","title":"dateRange","description":"Notice the tenant must give to exercise the contraction right. Shape follows the unit the term was captured with: `number` for a plain count, `date` for a stated deadline, and `numberRange` or `dateRange` when the lease states a window rather than a single figure.","required":["kind"],"properties":{"kind":{"type":"string","description":"Discriminator for this shape — always `dateRange` here.","enum":["dateRange"],"isRequired":true,"uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.1.advancedNoticePeriod.oneOf.3.kind","typeLabel":"enum\u003cstring>"},"unit":{"type":"string","description":"Unit qualifier for the value when the source text carried one (e.g. months, per square foot).","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.1.advancedNoticePeriod.oneOf.3.unit","typeLabel":"string"},"capturedData":{"type":"string","description":"The value as captured during extraction, as text.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.1.advancedNoticePeriod.oneOf.3.capturedData","typeLabel":"string"},"ocrText":{"type":"string","description":"Raw source text the value was extracted from.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.1.advancedNoticePeriod.oneOf.3.ocrText","typeLabel":"string"},"start":{"type":"string","description":"Present when `kind` is `dateRange`. Inclusive start of the range, `yyyy-MM-dd`. Omitted together with `end` when `capturedData` could not be split into a parseable pair.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.1.advancedNoticePeriod.oneOf.3.start","typeLabel":"string"},"end":{"type":"string","description":"Present when `kind` is `dateRange`. Inclusive end of the range, `yyyy-MM-dd`. Omitted together with `start` when `capturedData` could not be split into a parseable pair.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.1.advancedNoticePeriod.oneOf.3.end","typeLabel":"string"}},"uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.1.advancedNoticePeriod.oneOf.3","typeLabel":"dateRange · object"},{"type":"object","title":"text","description":"Notice the tenant must give to exercise the contraction right. Shape follows the unit the term was captured with: `number` for a plain count, `date` for a stated deadline, and `numberRange` or `dateRange` when the lease states a window rather than a single figure.","required":["kind"],"properties":{"kind":{"type":"string","description":"Discriminator for this shape — always `text` here.","enum":["text"],"isRequired":true,"uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.1.advancedNoticePeriod.oneOf.4.kind","typeLabel":"enum\u003cstring>"},"unit":{"type":"string","description":"Unit qualifier for the value when the source text carried one (e.g. months, per square foot).","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.1.advancedNoticePeriod.oneOf.4.unit","typeLabel":"string"},"capturedData":{"type":"string","description":"The value as captured during extraction, as text.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.1.advancedNoticePeriod.oneOf.4.capturedData","typeLabel":"string"},"ocrText":{"type":"string","description":"Raw source text the value was extracted from.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.1.advancedNoticePeriod.oneOf.4.ocrText","typeLabel":"string"},"value":{"type":"string","description":"The typed value. Its JSON type follows `kind`: a number for `number` and `percent`, a `yyyy-MM-dd` string for `date`, a decimal string for `money`, and the captured text for `text`. Omitted when `capturedData` could not be parsed into that type.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.1.advancedNoticePeriod.oneOf.4.value","typeLabel":"string"}},"uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.1.advancedNoticePeriod.oneOf.4","typeLabel":"text · object"}],"uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.1.advancedNoticePeriod","typeLabel":"number · object | date · object | numberRange · object | dateRange · object | text · object"},"contractionFee":{"oneOf":[{"type":"object","title":"money","description":"Fee payable on exercising the contraction. Shape follows the unit the amount was captured with: a stated amount arrives as `money` with the lease's currency, and an amount the lease describes rather than states arrives as `text`, with the wording in `capturedData`.","required":["kind"],"properties":{"kind":{"type":"string","description":"Discriminator for this shape — always `money` here.","enum":["money"],"isRequired":true,"uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.1.contractionFee.oneOf.0.kind","typeLabel":"enum\u003cstring>"},"unit":{"type":"string","description":"Unit qualifier for the value when the source text carried one (e.g. months, per square foot).","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.1.contractionFee.oneOf.0.unit","typeLabel":"string"},"capturedData":{"type":"string","description":"The value as captured during extraction, as text.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.1.contractionFee.oneOf.0.capturedData","typeLabel":"string"},"ocrText":{"type":"string","description":"Raw source text the value was extracted from.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.1.contractionFee.oneOf.0.ocrText","typeLabel":"string"},"value":{"type":"string","description":"Present when `kind` is `money`. Decimal string (not a JSON number) holding a BigDecimal rounded to 2 decimals — preserves cent precision through JSON, e.g. \"120000.00\".","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.1.contractionFee.oneOf.0.value","typeLabel":"string"},"currency":{"type":"string","description":"Currency code for the value (e.g. USD).","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.1.contractionFee.oneOf.0.currency","typeLabel":"string"}},"uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.1.contractionFee.oneOf.0","typeLabel":"money · object"},{"type":"object","title":"text","description":"Fee payable on exercising the contraction. Shape follows the unit the amount was captured with: a stated amount arrives as `money` with the lease's currency, and an amount the lease describes rather than states arrives as `text`, with the wording in `capturedData`.","required":["kind"],"properties":{"kind":{"type":"string","description":"Discriminator for this shape — always `text` here.","enum":["text"],"isRequired":true,"uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.1.contractionFee.oneOf.1.kind","typeLabel":"enum\u003cstring>"},"unit":{"type":"string","description":"Unit qualifier for the value when the source text carried one (e.g. months, per square foot).","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.1.contractionFee.oneOf.1.unit","typeLabel":"string"},"capturedData":{"type":"string","description":"The value as captured during extraction, as text.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.1.contractionFee.oneOf.1.capturedData","typeLabel":"string"},"ocrText":{"type":"string","description":"Raw source text the value was extracted from.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.1.contractionFee.oneOf.1.ocrText","typeLabel":"string"},"value":{"type":"string","description":"The typed value. Its JSON type follows `kind`: a number for `number` and `percent`, a `yyyy-MM-dd` string for `date`, a decimal string for `money`, and the captured text for `text`. Omitted when `capturedData` could not be parsed into that type.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.1.contractionFee.oneOf.1.value","typeLabel":"string"}},"uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.1.contractionFee.oneOf.1","typeLabel":"text · object"}],"uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.1.contractionFee","typeLabel":"money · object | text · object"},"optionEndDate":{"oneOf":[{"type":"object","title":"number","description":"Deadline to elect the contraction. Shape follows the unit it was captured with: a stated deadline arrives as `date`, a period the lease measures rather than dates arrives as `number` — read `unit` for what it counts — and a window as `dateRange`.","required":["kind"],"properties":{"kind":{"type":"string","description":"Discriminator for this shape — always `number` here.","enum":["number"],"isRequired":true,"uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.1.optionEndDate.oneOf.0.kind","typeLabel":"enum\u003cstring>"},"unit":{"type":"string","description":"Unit qualifier for the value when the source text carried one (e.g. months, per square foot).","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.1.optionEndDate.oneOf.0.unit","typeLabel":"string"},"capturedData":{"type":"string","description":"The value as captured during extraction, as text.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.1.optionEndDate.oneOf.0.capturedData","typeLabel":"string"},"ocrText":{"type":"string","description":"Raw source text the value was extracted from.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.1.optionEndDate.oneOf.0.ocrText","typeLabel":"string"},"value":{"type":"number","description":"The typed value. Its JSON type follows `kind`: a number for `number` and `percent`, a `yyyy-MM-dd` string for `date`, a decimal string for `money`, and the captured text for `text`. Omitted when `capturedData` could not be parsed into that type.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.1.optionEndDate.oneOf.0.value","typeLabel":"number"}},"uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.1.optionEndDate.oneOf.0","typeLabel":"number · object"},{"type":"object","title":"date","description":"Deadline to elect the contraction. Shape follows the unit it was captured with: a stated deadline arrives as `date`, a period the lease measures rather than dates arrives as `number` — read `unit` for what it counts — and a window as `dateRange`.","required":["kind"],"properties":{"kind":{"type":"string","description":"Discriminator for this shape — always `date` here.","enum":["date"],"isRequired":true,"uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.1.optionEndDate.oneOf.1.kind","typeLabel":"enum\u003cstring>"},"unit":{"type":"string","description":"Unit qualifier for the value when the source text carried one (e.g. months, per square foot).","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.1.optionEndDate.oneOf.1.unit","typeLabel":"string"},"capturedData":{"type":"string","description":"The value as captured during extraction, as text.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.1.optionEndDate.oneOf.1.capturedData","typeLabel":"string"},"ocrText":{"type":"string","description":"Raw source text the value was extracted from.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.1.optionEndDate.oneOf.1.ocrText","typeLabel":"string"},"value":{"type":"string","description":"Present when `kind` is `date`. The captured date, `yyyy-MM-dd`. Omitted when the captured text was not parseable as a date; `capturedData` still holds what was captured.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.1.optionEndDate.oneOf.1.value","typeLabel":"string"}},"uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.1.optionEndDate.oneOf.1","typeLabel":"date · object"},{"type":"object","title":"dateRange","description":"Deadline to elect the contraction. Shape follows the unit it was captured with: a stated deadline arrives as `date`, a period the lease measures rather than dates arrives as `number` — read `unit` for what it counts — and a window as `dateRange`.","required":["kind"],"properties":{"kind":{"type":"string","description":"Discriminator for this shape — always `dateRange` here.","enum":["dateRange"],"isRequired":true,"uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.1.optionEndDate.oneOf.2.kind","typeLabel":"enum\u003cstring>"},"unit":{"type":"string","description":"Unit qualifier for the value when the source text carried one (e.g. months, per square foot).","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.1.optionEndDate.oneOf.2.unit","typeLabel":"string"},"capturedData":{"type":"string","description":"The value as captured during extraction, as text.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.1.optionEndDate.oneOf.2.capturedData","typeLabel":"string"},"ocrText":{"type":"string","description":"Raw source text the value was extracted from.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.1.optionEndDate.oneOf.2.ocrText","typeLabel":"string"},"start":{"type":"string","description":"Present when `kind` is `dateRange`. Inclusive start of the range, `yyyy-MM-dd`. Omitted together with `end` when `capturedData` could not be split into a parseable pair.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.1.optionEndDate.oneOf.2.start","typeLabel":"string"},"end":{"type":"string","description":"Present when `kind` is `dateRange`. Inclusive end of the range, `yyyy-MM-dd`. Omitted together with `start` when `capturedData` could not be split into a parseable pair.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.1.optionEndDate.oneOf.2.end","typeLabel":"string"}},"uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.1.optionEndDate.oneOf.2","typeLabel":"dateRange · object"},{"type":"object","title":"text","description":"Deadline to elect the contraction. Shape follows the unit it was captured with: a stated deadline arrives as `date`, a period the lease measures rather than dates arrives as `number` — read `unit` for what it counts — and a window as `dateRange`.","required":["kind"],"properties":{"kind":{"type":"string","description":"Discriminator for this shape — always `text` here.","enum":["text"],"isRequired":true,"uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.1.optionEndDate.oneOf.3.kind","typeLabel":"enum\u003cstring>"},"unit":{"type":"string","description":"Unit qualifier for the value when the source text carried one (e.g. months, per square foot).","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.1.optionEndDate.oneOf.3.unit","typeLabel":"string"},"capturedData":{"type":"string","description":"The value as captured during extraction, as text.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.1.optionEndDate.oneOf.3.capturedData","typeLabel":"string"},"ocrText":{"type":"string","description":"Raw source text the value was extracted from.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.1.optionEndDate.oneOf.3.ocrText","typeLabel":"string"},"value":{"type":"string","description":"The typed value. Its JSON type follows `kind`: a number for `number` and `percent`, a `yyyy-MM-dd` string for `date`, a decimal string for `money`, and the captured text for `text`. Omitted when `capturedData` could not be parsed into that type.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.1.optionEndDate.oneOf.3.value","typeLabel":"string"}},"uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.1.optionEndDate.oneOf.3","typeLabel":"text · object"}],"uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.1.optionEndDate","typeLabel":"number · object | date · object | dateRange · object | text · object"},"earlyMoveOutDate":{"oneOf":[{"type":"object","title":"number","description":"When the tenant may vacate the contracted space. Shape follows the unit it was captured with: a stated date arrives as `date`, and a period the lease measures rather than dates arrives as `number` — read `unit` for what it counts.","required":["kind"],"properties":{"kind":{"type":"string","description":"Discriminator for this shape — always `number` here.","enum":["number"],"isRequired":true,"uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.1.earlyMoveOutDate.oneOf.0.kind","typeLabel":"enum\u003cstring>"},"unit":{"type":"string","description":"Unit qualifier for the value when the source text carried one (e.g. months, per square foot).","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.1.earlyMoveOutDate.oneOf.0.unit","typeLabel":"string"},"capturedData":{"type":"string","description":"The value as captured during extraction, as text.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.1.earlyMoveOutDate.oneOf.0.capturedData","typeLabel":"string"},"ocrText":{"type":"string","description":"Raw source text the value was extracted from.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.1.earlyMoveOutDate.oneOf.0.ocrText","typeLabel":"string"},"value":{"type":"number","description":"The typed value. Its JSON type follows `kind`: a number for `number` and `percent`, a `yyyy-MM-dd` string for `date`, a decimal string for `money`, and the captured text for `text`. Omitted when `capturedData` could not be parsed into that type.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.1.earlyMoveOutDate.oneOf.0.value","typeLabel":"number"}},"uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.1.earlyMoveOutDate.oneOf.0","typeLabel":"number · object"},{"type":"object","title":"date","description":"When the tenant may vacate the contracted space. Shape follows the unit it was captured with: a stated date arrives as `date`, and a period the lease measures rather than dates arrives as `number` — read `unit` for what it counts.","required":["kind"],"properties":{"kind":{"type":"string","description":"Discriminator for this shape — always `date` here.","enum":["date"],"isRequired":true,"uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.1.earlyMoveOutDate.oneOf.1.kind","typeLabel":"enum\u003cstring>"},"unit":{"type":"string","description":"Unit qualifier for the value when the source text carried one (e.g. months, per square foot).","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.1.earlyMoveOutDate.oneOf.1.unit","typeLabel":"string"},"capturedData":{"type":"string","description":"The value as captured during extraction, as text.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.1.earlyMoveOutDate.oneOf.1.capturedData","typeLabel":"string"},"ocrText":{"type":"string","description":"Raw source text the value was extracted from.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.1.earlyMoveOutDate.oneOf.1.ocrText","typeLabel":"string"},"value":{"type":"string","description":"Present when `kind` is `date`. The captured date, `yyyy-MM-dd`. Omitted when the captured text was not parseable as a date; `capturedData` still holds what was captured.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.1.earlyMoveOutDate.oneOf.1.value","typeLabel":"string"}},"uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.1.earlyMoveOutDate.oneOf.1","typeLabel":"date · object"},{"type":"object","title":"text","description":"When the tenant may vacate the contracted space. Shape follows the unit it was captured with: a stated date arrives as `date`, and a period the lease measures rather than dates arrives as `number` — read `unit` for what it counts.","required":["kind"],"properties":{"kind":{"type":"string","description":"Discriminator for this shape — always `text` here.","enum":["text"],"isRequired":true,"uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.1.earlyMoveOutDate.oneOf.2.kind","typeLabel":"enum\u003cstring>"},"unit":{"type":"string","description":"Unit qualifier for the value when the source text carried one (e.g. months, per square foot).","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.1.earlyMoveOutDate.oneOf.2.unit","typeLabel":"string"},"capturedData":{"type":"string","description":"The value as captured during extraction, as text.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.1.earlyMoveOutDate.oneOf.2.capturedData","typeLabel":"string"},"ocrText":{"type":"string","description":"Raw source text the value was extracted from.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.1.earlyMoveOutDate.oneOf.2.ocrText","typeLabel":"string"},"value":{"type":"string","description":"The typed value. Its JSON type follows `kind`: a number for `number` and `percent`, a `yyyy-MM-dd` string for `date`, a decimal string for `money`, and the captured text for `text`. Omitted when `capturedData` could not be parsed into that type.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.1.earlyMoveOutDate.oneOf.2.value","typeLabel":"string"}},"uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.1.earlyMoveOutDate.oneOf.2","typeLabel":"text · object"}],"uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.1.earlyMoveOutDate","typeLabel":"number · object | date · object | text · object"},"contractionSpace":{"type":"array","description":"Spaces the tenant may give back, in the same shape as a Tag's `applicableSpaces`: suite names matched against `BuildingSpace.suiteNumber` by string, with the `Entire building` and `All spaces` sentinels for whole-building scope.","items":{"type":"object","description":"Reference to space in a Building: one Building Space suiteNumber, an entire floor, the entire Building, or all spaces. `scope` says which of those it is, and `name` carries the label — for `BUILDING` and `ALL` that label is the sentinel `Entire building` or `All spaces` rather than the name of a real Building Space. The `ALL` scope means all suites in the relevant context are referenced: a Tag with `scope: ALL` refers to every suite defined in the suiteNumber tag belonging to that Document or Lease.","properties":{"name":{"type":"string","description":"The space's display name: a suite name that matches `BuildingSpace.suiteNumber` by string (scope SUITE), a floor designation (scope FLOOR), or the sentinels `Entire building` / `All spaces`.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.1.contractionSpace.items.[INDEX].name","typeLabel":"string"},"buildingId":{"type":"string","description":"Building this entry refers to. Can differ from the parent lease's own Building when a lease spans multiple buildings or has relocated.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.1.contractionSpace.items.[INDEX].buildingId","typeLabel":"string"},"scope":{"type":"string","description":"Granularity of the reference: SUITE (one suite), FLOOR (a whole floor), BUILDING (the entire building), or ALL (all spaces).","enum":["BUILDING","FLOOR","SUITE","ALL"],"uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.1.contractionSpace.items.[INDEX].scope","typeLabel":"enum\u003cstring>"}},"uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.1.contractionSpace.items.[INDEX]","typeLabel":"object"},"uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.1.contractionSpace","typeLabel":"object[]"},"effectivePeriod":{"type":"object","title":"dateRange","description":"Date range during which the right may be exercised.","required":["kind"],"properties":{"kind":{"type":"string","description":"Discriminator for this shape — always `dateRange` here.","enum":["dateRange"],"isRequired":true,"uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.1.effectivePeriod.kind","typeLabel":"enum\u003cstring>"},"unit":{"type":"string","description":"Unit qualifier for the value when the source text carried one (e.g. months, per square foot).","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.1.effectivePeriod.unit","typeLabel":"string"},"capturedData":{"type":"string","description":"The value as captured during extraction, as text.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.1.effectivePeriod.capturedData","typeLabel":"string"},"ocrText":{"type":"string","description":"Raw source text the value was extracted from.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.1.effectivePeriod.ocrText","typeLabel":"string"},"start":{"type":"string","description":"Present when `kind` is `dateRange`. Inclusive start of the range, `yyyy-MM-dd`. Omitted together with `end` when `capturedData` could not be split into a parseable pair.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.1.effectivePeriod.start","typeLabel":"string"},"end":{"type":"string","description":"Present when `kind` is `dateRange`. Inclusive end of the range, `yyyy-MM-dd`. Omitted together with `start` when `capturedData` could not be split into a parseable pair.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.1.effectivePeriod.end","typeLabel":"string"}},"uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.1.effectivePeriod","typeLabel":"dateRange · object"}},"uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.1","typeLabel":"CONTRACTION · object"},{"type":"object","title":"EARLY_TERMINATION","description":"Structured detail for COMPLEX tags (options and rights). Branch on its `kind`. Null for STANDARD tags.","required":["kind"],"properties":{"kind":{"type":"string","description":"Discriminator for this shape — always `EARLY_TERMINATION` here.","enum":["EARLY_TERMINATION"],"isRequired":true,"uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.2.kind","typeLabel":"enum\u003cstring>"},"rightStatus":{"type":"string","description":"Status of the option/right itself. Independent of the tag record's `lifecycleStatus` — the two are resolved independently and can disagree.","enum":["AVAILABLE","EXERCISED","STRICKEN","DECLINED","EXPIRED","UNKNOWN"],"uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.2.rightStatus","typeLabel":"enum\u003cstring>"},"rightIsStricken":{"type":"string","description":"Indicator the right was stricken from the lease via a Stricken clause; see `rightStatus` for the resolved state.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.2.rightIsStricken","typeLabel":"string"},"customLabel":{"type":"string","description":"Label denoting the option family this option belongs to. Options with the same `referenceId` should also shared the same `customLabel`","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.2.customLabel","typeLabel":"string"},"effectiveDateOfRight":{"oneOf":[{"type":"object","title":"number","description":"When the current version of the right takes effect. Defaults to the parent tag's own effective date, which arrives as `date` with no `unit` because nothing was captured for it; an `\u003coption>.effectiveDateOfRight` cor tag overrides that. Shape follows the unit it was captured with: a stated deadline arrives as `date`, a period the lease measures rather than dates arrives as `number` — read `unit` for what it counts — and a window as `dateRange`.","required":["kind"],"properties":{"kind":{"type":"string","description":"Discriminator for this shape — always `number` here.","enum":["number"],"isRequired":true,"uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.2.effectiveDateOfRight.oneOf.0.kind","typeLabel":"enum\u003cstring>"},"unit":{"type":"string","description":"Unit qualifier for the value when the source text carried one (e.g. months, per square foot).","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.2.effectiveDateOfRight.oneOf.0.unit","typeLabel":"string"},"capturedData":{"type":"string","description":"The value as captured during extraction, as text.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.2.effectiveDateOfRight.oneOf.0.capturedData","typeLabel":"string"},"ocrText":{"type":"string","description":"Raw source text the value was extracted from.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.2.effectiveDateOfRight.oneOf.0.ocrText","typeLabel":"string"},"value":{"type":"number","description":"The typed value. Its JSON type follows `kind`: a number for `number` and `percent`, a `yyyy-MM-dd` string for `date`, a decimal string for `money`, and the captured text for `text`. Omitted when `capturedData` could not be parsed into that type.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.2.effectiveDateOfRight.oneOf.0.value","typeLabel":"number"}},"uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.2.effectiveDateOfRight.oneOf.0","typeLabel":"number · object"},{"type":"object","title":"date","description":"When the current version of the right takes effect. Defaults to the parent tag's own effective date, which arrives as `date` with no `unit` because nothing was captured for it; an `\u003coption>.effectiveDateOfRight` cor tag overrides that. Shape follows the unit it was captured with: a stated deadline arrives as `date`, a period the lease measures rather than dates arrives as `number` — read `unit` for what it counts — and a window as `dateRange`.","required":["kind"],"properties":{"kind":{"type":"string","description":"Discriminator for this shape — always `date` here.","enum":["date"],"isRequired":true,"uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.2.effectiveDateOfRight.oneOf.1.kind","typeLabel":"enum\u003cstring>"},"unit":{"type":"string","description":"Unit qualifier for the value when the source text carried one (e.g. months, per square foot).","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.2.effectiveDateOfRight.oneOf.1.unit","typeLabel":"string"},"capturedData":{"type":"string","description":"The value as captured during extraction, as text.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.2.effectiveDateOfRight.oneOf.1.capturedData","typeLabel":"string"},"ocrText":{"type":"string","description":"Raw source text the value was extracted from.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.2.effectiveDateOfRight.oneOf.1.ocrText","typeLabel":"string"},"value":{"type":"string","description":"Present when `kind` is `date`. The captured date, `yyyy-MM-dd`. Omitted when the captured text was not parseable as a date; `capturedData` still holds what was captured.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.2.effectiveDateOfRight.oneOf.1.value","typeLabel":"string"}},"uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.2.effectiveDateOfRight.oneOf.1","typeLabel":"date · object"},{"type":"object","title":"dateRange","description":"When the current version of the right takes effect. Defaults to the parent tag's own effective date, which arrives as `date` with no `unit` because nothing was captured for it; an `\u003coption>.effectiveDateOfRight` cor tag overrides that. Shape follows the unit it was captured with: a stated deadline arrives as `date`, a period the lease measures rather than dates arrives as `number` — read `unit` for what it counts — and a window as `dateRange`.","required":["kind"],"properties":{"kind":{"type":"string","description":"Discriminator for this shape — always `dateRange` here.","enum":["dateRange"],"isRequired":true,"uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.2.effectiveDateOfRight.oneOf.2.kind","typeLabel":"enum\u003cstring>"},"unit":{"type":"string","description":"Unit qualifier for the value when the source text carried one (e.g. months, per square foot).","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.2.effectiveDateOfRight.oneOf.2.unit","typeLabel":"string"},"capturedData":{"type":"string","description":"The value as captured during extraction, as text.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.2.effectiveDateOfRight.oneOf.2.capturedData","typeLabel":"string"},"ocrText":{"type":"string","description":"Raw source text the value was extracted from.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.2.effectiveDateOfRight.oneOf.2.ocrText","typeLabel":"string"},"start":{"type":"string","description":"Present when `kind` is `dateRange`. Inclusive start of the range, `yyyy-MM-dd`. Omitted together with `end` when `capturedData` could not be split into a parseable pair.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.2.effectiveDateOfRight.oneOf.2.start","typeLabel":"string"},"end":{"type":"string","description":"Present when `kind` is `dateRange`. Inclusive end of the range, `yyyy-MM-dd`. Omitted together with `start` when `capturedData` could not be split into a parseable pair.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.2.effectiveDateOfRight.oneOf.2.end","typeLabel":"string"}},"uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.2.effectiveDateOfRight.oneOf.2","typeLabel":"dateRange · object"},{"type":"object","title":"text","description":"When the current version of the right takes effect. Defaults to the parent tag's own effective date, which arrives as `date` with no `unit` because nothing was captured for it; an `\u003coption>.effectiveDateOfRight` cor tag overrides that. Shape follows the unit it was captured with: a stated deadline arrives as `date`, a period the lease measures rather than dates arrives as `number` — read `unit` for what it counts — and a window as `dateRange`.","required":["kind"],"properties":{"kind":{"type":"string","description":"Discriminator for this shape — always `text` here.","enum":["text"],"isRequired":true,"uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.2.effectiveDateOfRight.oneOf.3.kind","typeLabel":"enum\u003cstring>"},"unit":{"type":"string","description":"Unit qualifier for the value when the source text carried one (e.g. months, per square foot).","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.2.effectiveDateOfRight.oneOf.3.unit","typeLabel":"string"},"capturedData":{"type":"string","description":"The value as captured during extraction, as text.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.2.effectiveDateOfRight.oneOf.3.capturedData","typeLabel":"string"},"ocrText":{"type":"string","description":"Raw source text the value was extracted from.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.2.effectiveDateOfRight.oneOf.3.ocrText","typeLabel":"string"},"value":{"type":"string","description":"The typed value. Its JSON type follows `kind`: a number for `number` and `percent`, a `yyyy-MM-dd` string for `date`, a decimal string for `money`, and the captured text for `text`. Omitted when `capturedData` could not be parsed into that type.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.2.effectiveDateOfRight.oneOf.3.value","typeLabel":"string"}},"uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.2.effectiveDateOfRight.oneOf.3","typeLabel":"text · object"}],"uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.2.effectiveDateOfRight","typeLabel":"number · object | date · object | dateRange · object | text · object"},"clause":{"type":"string","description":"Some Tags capture a simple clause rather than more in-depth data, represented here when that is the case.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.2.clause","typeLabel":"string"},"amendingTag":{"type":"object","description":"The same reference the Tag carries in its own `amendingTag` — both are built from this option's `referenceId`, so reading either gives the option this one amends. Repeated here so a caller working inside `tagComponents` does not have to climb back out to the Tag.","properties":{"effectiveDate":{"type":"string","description":"Effective date of the referenced Tag — the amended option, or the parent option when this sits on a component. Not the effective date of the Tag carrying this reference.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.2.amendingTag.effectiveDate","typeLabel":"string"},"amendedTagId":{"type":"string","description":"Id the Tag's `referenceId` points at: the earlier option this one amends, or the parent option container when this sits on a component Tag.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.2.amendingTag.amendedTagId","typeLabel":"string"}},"uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.2.amendingTag","typeLabel":"object"},"componentTags":{"type":"object","additionalProperties":{"type":"object","description":"A pointer to another Tag. These are the values of a component's `componentTags` map, one per constituent tag the option or right was assembled from, keyed by the part of that tag's `tagName` after the dot. The component surfaces those tags' values on its own fields; fetch a Tag by id with the [get tag endpoint](/api-reference/v2/tags/get-tag) when you need its citations, status, or raw captured text.","properties":{"id":{"type":"string","description":"Tag Id (UUID) of the referenced tag.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.2.componentTags.additionalProperties.id","typeLabel":"string"},"displayName":{"type":"string","description":"Display name of the referenced tag.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.2.componentTags.additionalProperties.displayName","typeLabel":"string"}},"uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.2.componentTags.additionalProperties","typeLabel":"object"},"description":"References to the constituent tags this component was assembled from, keyed by component field.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.2.componentTags","typeLabel":"object"},"advancedNoticePeriod":{"oneOf":[{"type":"object","title":"number","description":"Notice the tenant must give to terminate early. Shape follows the unit the term was captured with: `number` for a plain count, `date` for a stated deadline, and `numberRange` or `dateRange` when the lease states a window rather than a single figure.","required":["kind"],"properties":{"kind":{"type":"string","description":"Discriminator for this shape — always `number` here.","enum":["number"],"isRequired":true,"uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.2.advancedNoticePeriod.oneOf.0.kind","typeLabel":"enum\u003cstring>"},"unit":{"type":"string","description":"Unit qualifier for the value when the source text carried one (e.g. months, per square foot).","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.2.advancedNoticePeriod.oneOf.0.unit","typeLabel":"string"},"capturedData":{"type":"string","description":"The value as captured during extraction, as text.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.2.advancedNoticePeriod.oneOf.0.capturedData","typeLabel":"string"},"ocrText":{"type":"string","description":"Raw source text the value was extracted from.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.2.advancedNoticePeriod.oneOf.0.ocrText","typeLabel":"string"},"value":{"type":"number","description":"The typed value. Its JSON type follows `kind`: a number for `number` and `percent`, a `yyyy-MM-dd` string for `date`, a decimal string for `money`, and the captured text for `text`. Omitted when `capturedData` could not be parsed into that type.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.2.advancedNoticePeriod.oneOf.0.value","typeLabel":"number"}},"uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.2.advancedNoticePeriod.oneOf.0","typeLabel":"number · object"},{"type":"object","title":"date","description":"Notice the tenant must give to terminate early. Shape follows the unit the term was captured with: `number` for a plain count, `date` for a stated deadline, and `numberRange` or `dateRange` when the lease states a window rather than a single figure.","required":["kind"],"properties":{"kind":{"type":"string","description":"Discriminator for this shape — always `date` here.","enum":["date"],"isRequired":true,"uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.2.advancedNoticePeriod.oneOf.1.kind","typeLabel":"enum\u003cstring>"},"unit":{"type":"string","description":"Unit qualifier for the value when the source text carried one (e.g. months, per square foot).","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.2.advancedNoticePeriod.oneOf.1.unit","typeLabel":"string"},"capturedData":{"type":"string","description":"The value as captured during extraction, as text.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.2.advancedNoticePeriod.oneOf.1.capturedData","typeLabel":"string"},"ocrText":{"type":"string","description":"Raw source text the value was extracted from.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.2.advancedNoticePeriod.oneOf.1.ocrText","typeLabel":"string"},"value":{"type":"string","description":"Present when `kind` is `date`. The captured date, `yyyy-MM-dd`. Omitted when the captured text was not parseable as a date; `capturedData` still holds what was captured.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.2.advancedNoticePeriod.oneOf.1.value","typeLabel":"string"}},"uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.2.advancedNoticePeriod.oneOf.1","typeLabel":"date · object"},{"type":"object","title":"numberRange","description":"Notice the tenant must give to terminate early. Shape follows the unit the term was captured with: `number` for a plain count, `date` for a stated deadline, and `numberRange` or `dateRange` when the lease states a window rather than a single figure.","required":["kind"],"properties":{"kind":{"type":"string","description":"Discriminator for this shape — always `numberRange` here.","enum":["numberRange"],"isRequired":true,"uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.2.advancedNoticePeriod.oneOf.2.kind","typeLabel":"enum\u003cstring>"},"unit":{"type":"string","description":"Unit qualifier for the value when the source text carried one (e.g. months, per square foot).","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.2.advancedNoticePeriod.oneOf.2.unit","typeLabel":"string"},"capturedData":{"type":"string","description":"The value as captured during extraction, as text.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.2.advancedNoticePeriod.oneOf.2.capturedData","typeLabel":"string"},"ocrText":{"type":"string","description":"Raw source text the value was extracted from.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.2.advancedNoticePeriod.oneOf.2.ocrText","typeLabel":"string"},"start":{"type":"integer","format":"int32","description":"Inclusive start of the range: a `yyyy-MM-dd` string for `dateRange`, an integer for `numberRange`. Omitted together with `end` when `capturedData` could not be split into a parseable pair.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.2.advancedNoticePeriod.oneOf.2.start","typeLabel":"integer\u003cint32>"},"end":{"type":"integer","format":"int32","description":"Inclusive end of the range: a `yyyy-MM-dd` string for `dateRange`, an integer for `numberRange`. Omitted together with `start` when `capturedData` could not be split into a parseable pair.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.2.advancedNoticePeriod.oneOf.2.end","typeLabel":"integer\u003cint32>"}},"uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.2.advancedNoticePeriod.oneOf.2","typeLabel":"numberRange · object"},{"type":"object","title":"dateRange","description":"Notice the tenant must give to terminate early. Shape follows the unit the term was captured with: `number` for a plain count, `date` for a stated deadline, and `numberRange` or `dateRange` when the lease states a window rather than a single figure.","required":["kind"],"properties":{"kind":{"type":"string","description":"Discriminator for this shape — always `dateRange` here.","enum":["dateRange"],"isRequired":true,"uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.2.advancedNoticePeriod.oneOf.3.kind","typeLabel":"enum\u003cstring>"},"unit":{"type":"string","description":"Unit qualifier for the value when the source text carried one (e.g. months, per square foot).","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.2.advancedNoticePeriod.oneOf.3.unit","typeLabel":"string"},"capturedData":{"type":"string","description":"The value as captured during extraction, as text.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.2.advancedNoticePeriod.oneOf.3.capturedData","typeLabel":"string"},"ocrText":{"type":"string","description":"Raw source text the value was extracted from.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.2.advancedNoticePeriod.oneOf.3.ocrText","typeLabel":"string"},"start":{"type":"string","description":"Present when `kind` is `dateRange`. Inclusive start of the range, `yyyy-MM-dd`. Omitted together with `end` when `capturedData` could not be split into a parseable pair.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.2.advancedNoticePeriod.oneOf.3.start","typeLabel":"string"},"end":{"type":"string","description":"Present when `kind` is `dateRange`. Inclusive end of the range, `yyyy-MM-dd`. Omitted together with `start` when `capturedData` could not be split into a parseable pair.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.2.advancedNoticePeriod.oneOf.3.end","typeLabel":"string"}},"uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.2.advancedNoticePeriod.oneOf.3","typeLabel":"dateRange · object"},{"type":"object","title":"text","description":"Notice the tenant must give to terminate early. Shape follows the unit the term was captured with: `number` for a plain count, `date` for a stated deadline, and `numberRange` or `dateRange` when the lease states a window rather than a single figure.","required":["kind"],"properties":{"kind":{"type":"string","description":"Discriminator for this shape — always `text` here.","enum":["text"],"isRequired":true,"uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.2.advancedNoticePeriod.oneOf.4.kind","typeLabel":"enum\u003cstring>"},"unit":{"type":"string","description":"Unit qualifier for the value when the source text carried one (e.g. months, per square foot).","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.2.advancedNoticePeriod.oneOf.4.unit","typeLabel":"string"},"capturedData":{"type":"string","description":"The value as captured during extraction, as text.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.2.advancedNoticePeriod.oneOf.4.capturedData","typeLabel":"string"},"ocrText":{"type":"string","description":"Raw source text the value was extracted from.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.2.advancedNoticePeriod.oneOf.4.ocrText","typeLabel":"string"},"value":{"type":"string","description":"The typed value. Its JSON type follows `kind`: a number for `number` and `percent`, a `yyyy-MM-dd` string for `date`, a decimal string for `money`, and the captured text for `text`. Omitted when `capturedData` could not be parsed into that type.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.2.advancedNoticePeriod.oneOf.4.value","typeLabel":"string"}},"uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.2.advancedNoticePeriod.oneOf.4","typeLabel":"text · object"}],"uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.2.advancedNoticePeriod","typeLabel":"number · object | date · object | numberRange · object | dateRange · object | text · object"},"terminationFee":{"oneOf":[{"type":"object","title":"money","description":"Fee payable on exercising the termination. Shape follows the unit the amount was captured with: a stated amount arrives as `money` with the lease's currency, and an amount the lease describes rather than states arrives as `text`, with the wording in `capturedData`.","required":["kind"],"properties":{"kind":{"type":"string","description":"Discriminator for this shape — always `money` here.","enum":["money"],"isRequired":true,"uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.2.terminationFee.oneOf.0.kind","typeLabel":"enum\u003cstring>"},"unit":{"type":"string","description":"Unit qualifier for the value when the source text carried one (e.g. months, per square foot).","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.2.terminationFee.oneOf.0.unit","typeLabel":"string"},"capturedData":{"type":"string","description":"The value as captured during extraction, as text.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.2.terminationFee.oneOf.0.capturedData","typeLabel":"string"},"ocrText":{"type":"string","description":"Raw source text the value was extracted from.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.2.terminationFee.oneOf.0.ocrText","typeLabel":"string"},"value":{"type":"string","description":"Present when `kind` is `money`. Decimal string (not a JSON number) holding a BigDecimal rounded to 2 decimals — preserves cent precision through JSON, e.g. \"120000.00\".","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.2.terminationFee.oneOf.0.value","typeLabel":"string"},"currency":{"type":"string","description":"Currency code for the value (e.g. USD).","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.2.terminationFee.oneOf.0.currency","typeLabel":"string"}},"uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.2.terminationFee.oneOf.0","typeLabel":"money · object"},{"type":"object","title":"text","description":"Fee payable on exercising the termination. Shape follows the unit the amount was captured with: a stated amount arrives as `money` with the lease's currency, and an amount the lease describes rather than states arrives as `text`, with the wording in `capturedData`.","required":["kind"],"properties":{"kind":{"type":"string","description":"Discriminator for this shape — always `text` here.","enum":["text"],"isRequired":true,"uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.2.terminationFee.oneOf.1.kind","typeLabel":"enum\u003cstring>"},"unit":{"type":"string","description":"Unit qualifier for the value when the source text carried one (e.g. months, per square foot).","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.2.terminationFee.oneOf.1.unit","typeLabel":"string"},"capturedData":{"type":"string","description":"The value as captured during extraction, as text.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.2.terminationFee.oneOf.1.capturedData","typeLabel":"string"},"ocrText":{"type":"string","description":"Raw source text the value was extracted from.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.2.terminationFee.oneOf.1.ocrText","typeLabel":"string"},"value":{"type":"string","description":"The typed value. Its JSON type follows `kind`: a number for `number` and `percent`, a `yyyy-MM-dd` string for `date`, a decimal string for `money`, and the captured text for `text`. Omitted when `capturedData` could not be parsed into that type.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.2.terminationFee.oneOf.1.value","typeLabel":"string"}},"uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.2.terminationFee.oneOf.1","typeLabel":"text · object"}],"uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.2.terminationFee","typeLabel":"money · object | text · object"},"optionEndDate":{"oneOf":[{"type":"object","title":"number","description":"Deadline to elect the termination. Shape follows the unit it was captured with: a stated deadline arrives as `date`, a period the lease measures rather than dates arrives as `number` — read `unit` for what it counts — and a window as `dateRange`.","required":["kind"],"properties":{"kind":{"type":"string","description":"Discriminator for this shape — always `number` here.","enum":["number"],"isRequired":true,"uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.2.optionEndDate.oneOf.0.kind","typeLabel":"enum\u003cstring>"},"unit":{"type":"string","description":"Unit qualifier for the value when the source text carried one (e.g. months, per square foot).","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.2.optionEndDate.oneOf.0.unit","typeLabel":"string"},"capturedData":{"type":"string","description":"The value as captured during extraction, as text.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.2.optionEndDate.oneOf.0.capturedData","typeLabel":"string"},"ocrText":{"type":"string","description":"Raw source text the value was extracted from.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.2.optionEndDate.oneOf.0.ocrText","typeLabel":"string"},"value":{"type":"number","description":"The typed value. Its JSON type follows `kind`: a number for `number` and `percent`, a `yyyy-MM-dd` string for `date`, a decimal string for `money`, and the captured text for `text`. Omitted when `capturedData` could not be parsed into that type.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.2.optionEndDate.oneOf.0.value","typeLabel":"number"}},"uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.2.optionEndDate.oneOf.0","typeLabel":"number · object"},{"type":"object","title":"date","description":"Deadline to elect the termination. Shape follows the unit it was captured with: a stated deadline arrives as `date`, a period the lease measures rather than dates arrives as `number` — read `unit` for what it counts — and a window as `dateRange`.","required":["kind"],"properties":{"kind":{"type":"string","description":"Discriminator for this shape — always `date` here.","enum":["date"],"isRequired":true,"uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.2.optionEndDate.oneOf.1.kind","typeLabel":"enum\u003cstring>"},"unit":{"type":"string","description":"Unit qualifier for the value when the source text carried one (e.g. months, per square foot).","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.2.optionEndDate.oneOf.1.unit","typeLabel":"string"},"capturedData":{"type":"string","description":"The value as captured during extraction, as text.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.2.optionEndDate.oneOf.1.capturedData","typeLabel":"string"},"ocrText":{"type":"string","description":"Raw source text the value was extracted from.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.2.optionEndDate.oneOf.1.ocrText","typeLabel":"string"},"value":{"type":"string","description":"Present when `kind` is `date`. The captured date, `yyyy-MM-dd`. Omitted when the captured text was not parseable as a date; `capturedData` still holds what was captured.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.2.optionEndDate.oneOf.1.value","typeLabel":"string"}},"uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.2.optionEndDate.oneOf.1","typeLabel":"date · object"},{"type":"object","title":"dateRange","description":"Deadline to elect the termination. Shape follows the unit it was captured with: a stated deadline arrives as `date`, a period the lease measures rather than dates arrives as `number` — read `unit` for what it counts — and a window as `dateRange`.","required":["kind"],"properties":{"kind":{"type":"string","description":"Discriminator for this shape — always `dateRange` here.","enum":["dateRange"],"isRequired":true,"uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.2.optionEndDate.oneOf.2.kind","typeLabel":"enum\u003cstring>"},"unit":{"type":"string","description":"Unit qualifier for the value when the source text carried one (e.g. months, per square foot).","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.2.optionEndDate.oneOf.2.unit","typeLabel":"string"},"capturedData":{"type":"string","description":"The value as captured during extraction, as text.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.2.optionEndDate.oneOf.2.capturedData","typeLabel":"string"},"ocrText":{"type":"string","description":"Raw source text the value was extracted from.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.2.optionEndDate.oneOf.2.ocrText","typeLabel":"string"},"start":{"type":"string","description":"Present when `kind` is `dateRange`. Inclusive start of the range, `yyyy-MM-dd`. Omitted together with `end` when `capturedData` could not be split into a parseable pair.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.2.optionEndDate.oneOf.2.start","typeLabel":"string"},"end":{"type":"string","description":"Present when `kind` is `dateRange`. Inclusive end of the range, `yyyy-MM-dd`. Omitted together with `start` when `capturedData` could not be split into a parseable pair.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.2.optionEndDate.oneOf.2.end","typeLabel":"string"}},"uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.2.optionEndDate.oneOf.2","typeLabel":"dateRange · object"},{"type":"object","title":"text","description":"Deadline to elect the termination. Shape follows the unit it was captured with: a stated deadline arrives as `date`, a period the lease measures rather than dates arrives as `number` — read `unit` for what it counts — and a window as `dateRange`.","required":["kind"],"properties":{"kind":{"type":"string","description":"Discriminator for this shape — always `text` here.","enum":["text"],"isRequired":true,"uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.2.optionEndDate.oneOf.3.kind","typeLabel":"enum\u003cstring>"},"unit":{"type":"string","description":"Unit qualifier for the value when the source text carried one (e.g. months, per square foot).","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.2.optionEndDate.oneOf.3.unit","typeLabel":"string"},"capturedData":{"type":"string","description":"The value as captured during extraction, as text.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.2.optionEndDate.oneOf.3.capturedData","typeLabel":"string"},"ocrText":{"type":"string","description":"Raw source text the value was extracted from.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.2.optionEndDate.oneOf.3.ocrText","typeLabel":"string"},"value":{"type":"string","description":"The typed value. Its JSON type follows `kind`: a number for `number` and `percent`, a `yyyy-MM-dd` string for `date`, a decimal string for `money`, and the captured text for `text`. Omitted when `capturedData` could not be parsed into that type.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.2.optionEndDate.oneOf.3.value","typeLabel":"string"}},"uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.2.optionEndDate.oneOf.3","typeLabel":"text · object"}],"uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.2.optionEndDate","typeLabel":"number · object | date · object | dateRange · object | text · object"},"earlyMoveOutDate":{"oneOf":[{"type":"object","title":"number","description":"When the tenant may vacate on exercising the termination. Shape follows the unit it was captured with: a stated date arrives as `date`, and a period the lease measures rather than dates arrives as `number` — read `unit` for what it counts.","required":["kind"],"properties":{"kind":{"type":"string","description":"Discriminator for this shape — always `number` here.","enum":["number"],"isRequired":true,"uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.2.earlyMoveOutDate.oneOf.0.kind","typeLabel":"enum\u003cstring>"},"unit":{"type":"string","description":"Unit qualifier for the value when the source text carried one (e.g. months, per square foot).","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.2.earlyMoveOutDate.oneOf.0.unit","typeLabel":"string"},"capturedData":{"type":"string","description":"The value as captured during extraction, as text.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.2.earlyMoveOutDate.oneOf.0.capturedData","typeLabel":"string"},"ocrText":{"type":"string","description":"Raw source text the value was extracted from.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.2.earlyMoveOutDate.oneOf.0.ocrText","typeLabel":"string"},"value":{"type":"number","description":"The typed value. Its JSON type follows `kind`: a number for `number` and `percent`, a `yyyy-MM-dd` string for `date`, a decimal string for `money`, and the captured text for `text`. Omitted when `capturedData` could not be parsed into that type.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.2.earlyMoveOutDate.oneOf.0.value","typeLabel":"number"}},"uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.2.earlyMoveOutDate.oneOf.0","typeLabel":"number · object"},{"type":"object","title":"date","description":"When the tenant may vacate on exercising the termination. Shape follows the unit it was captured with: a stated date arrives as `date`, and a period the lease measures rather than dates arrives as `number` — read `unit` for what it counts.","required":["kind"],"properties":{"kind":{"type":"string","description":"Discriminator for this shape — always `date` here.","enum":["date"],"isRequired":true,"uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.2.earlyMoveOutDate.oneOf.1.kind","typeLabel":"enum\u003cstring>"},"unit":{"type":"string","description":"Unit qualifier for the value when the source text carried one (e.g. months, per square foot).","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.2.earlyMoveOutDate.oneOf.1.unit","typeLabel":"string"},"capturedData":{"type":"string","description":"The value as captured during extraction, as text.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.2.earlyMoveOutDate.oneOf.1.capturedData","typeLabel":"string"},"ocrText":{"type":"string","description":"Raw source text the value was extracted from.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.2.earlyMoveOutDate.oneOf.1.ocrText","typeLabel":"string"},"value":{"type":"string","description":"Present when `kind` is `date`. The captured date, `yyyy-MM-dd`. Omitted when the captured text was not parseable as a date; `capturedData` still holds what was captured.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.2.earlyMoveOutDate.oneOf.1.value","typeLabel":"string"}},"uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.2.earlyMoveOutDate.oneOf.1","typeLabel":"date · object"},{"type":"object","title":"text","description":"When the tenant may vacate on exercising the termination. Shape follows the unit it was captured with: a stated date arrives as `date`, and a period the lease measures rather than dates arrives as `number` — read `unit` for what it counts.","required":["kind"],"properties":{"kind":{"type":"string","description":"Discriminator for this shape — always `text` here.","enum":["text"],"isRequired":true,"uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.2.earlyMoveOutDate.oneOf.2.kind","typeLabel":"enum\u003cstring>"},"unit":{"type":"string","description":"Unit qualifier for the value when the source text carried one (e.g. months, per square foot).","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.2.earlyMoveOutDate.oneOf.2.unit","typeLabel":"string"},"capturedData":{"type":"string","description":"The value as captured during extraction, as text.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.2.earlyMoveOutDate.oneOf.2.capturedData","typeLabel":"string"},"ocrText":{"type":"string","description":"Raw source text the value was extracted from.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.2.earlyMoveOutDate.oneOf.2.ocrText","typeLabel":"string"},"value":{"type":"string","description":"The typed value. Its JSON type follows `kind`: a number for `number` and `percent`, a `yyyy-MM-dd` string for `date`, a decimal string for `money`, and the captured text for `text`. Omitted when `capturedData` could not be parsed into that type.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.2.earlyMoveOutDate.oneOf.2.value","typeLabel":"string"}},"uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.2.earlyMoveOutDate.oneOf.2","typeLabel":"text · object"}],"uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.2.earlyMoveOutDate","typeLabel":"number · object | date · object | text · object"},"effectivePeriod":{"type":"object","title":"dateRange","description":"Date range during which the right may be exercised.","required":["kind"],"properties":{"kind":{"type":"string","description":"Discriminator for this shape — always `dateRange` here.","enum":["dateRange"],"isRequired":true,"uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.2.effectivePeriod.kind","typeLabel":"enum\u003cstring>"},"unit":{"type":"string","description":"Unit qualifier for the value when the source text carried one (e.g. months, per square foot).","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.2.effectivePeriod.unit","typeLabel":"string"},"capturedData":{"type":"string","description":"The value as captured during extraction, as text.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.2.effectivePeriod.capturedData","typeLabel":"string"},"ocrText":{"type":"string","description":"Raw source text the value was extracted from.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.2.effectivePeriod.ocrText","typeLabel":"string"},"start":{"type":"string","description":"Present when `kind` is `dateRange`. Inclusive start of the range, `yyyy-MM-dd`. Omitted together with `end` when `capturedData` could not be split into a parseable pair.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.2.effectivePeriod.start","typeLabel":"string"},"end":{"type":"string","description":"Present when `kind` is `dateRange`. Inclusive end of the range, `yyyy-MM-dd`. Omitted together with `start` when `capturedData` could not be split into a parseable pair.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.2.effectivePeriod.end","typeLabel":"string"}},"uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.2.effectivePeriod","typeLabel":"dateRange · object"}},"uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.2","typeLabel":"EARLY_TERMINATION · object"},{"type":"object","title":"EXPANSION","description":"Structured detail for COMPLEX tags (options and rights). Branch on its `kind`. Null for STANDARD tags.","required":["kind"],"properties":{"kind":{"type":"string","description":"Discriminator for this shape — always `EXPANSION` here.","enum":["EXPANSION"],"isRequired":true,"uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.3.kind","typeLabel":"enum\u003cstring>"},"rightStatus":{"type":"string","description":"Status of the option/right itself. Independent of the tag record's `lifecycleStatus` — the two are resolved independently and can disagree.","enum":["AVAILABLE","EXERCISED","STRICKEN","DECLINED","EXPIRED","UNKNOWN"],"uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.3.rightStatus","typeLabel":"enum\u003cstring>"},"rightIsStricken":{"type":"string","description":"Indicator the right was stricken from the lease via a Stricken clause; see `rightStatus` for the resolved state.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.3.rightIsStricken","typeLabel":"string"},"customLabel":{"type":"string","description":"Label denoting the option family this option belongs to. Options with the same `referenceId` should also shared the same `customLabel`","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.3.customLabel","typeLabel":"string"},"effectiveDateOfRight":{"oneOf":[{"type":"object","title":"number","description":"When the current version of the right takes effect. Defaults to the parent tag's own effective date, which arrives as `date` with no `unit` because nothing was captured for it; an `\u003coption>.effectiveDateOfRight` cor tag overrides that. Shape follows the unit it was captured with: a stated deadline arrives as `date`, a period the lease measures rather than dates arrives as `number` — read `unit` for what it counts — and a window as `dateRange`.","required":["kind"],"properties":{"kind":{"type":"string","description":"Discriminator for this shape — always `number` here.","enum":["number"],"isRequired":true,"uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.3.effectiveDateOfRight.oneOf.0.kind","typeLabel":"enum\u003cstring>"},"unit":{"type":"string","description":"Unit qualifier for the value when the source text carried one (e.g. months, per square foot).","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.3.effectiveDateOfRight.oneOf.0.unit","typeLabel":"string"},"capturedData":{"type":"string","description":"The value as captured during extraction, as text.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.3.effectiveDateOfRight.oneOf.0.capturedData","typeLabel":"string"},"ocrText":{"type":"string","description":"Raw source text the value was extracted from.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.3.effectiveDateOfRight.oneOf.0.ocrText","typeLabel":"string"},"value":{"type":"number","description":"The typed value. Its JSON type follows `kind`: a number for `number` and `percent`, a `yyyy-MM-dd` string for `date`, a decimal string for `money`, and the captured text for `text`. Omitted when `capturedData` could not be parsed into that type.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.3.effectiveDateOfRight.oneOf.0.value","typeLabel":"number"}},"uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.3.effectiveDateOfRight.oneOf.0","typeLabel":"number · object"},{"type":"object","title":"date","description":"When the current version of the right takes effect. Defaults to the parent tag's own effective date, which arrives as `date` with no `unit` because nothing was captured for it; an `\u003coption>.effectiveDateOfRight` cor tag overrides that. Shape follows the unit it was captured with: a stated deadline arrives as `date`, a period the lease measures rather than dates arrives as `number` — read `unit` for what it counts — and a window as `dateRange`.","required":["kind"],"properties":{"kind":{"type":"string","description":"Discriminator for this shape — always `date` here.","enum":["date"],"isRequired":true,"uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.3.effectiveDateOfRight.oneOf.1.kind","typeLabel":"enum\u003cstring>"},"unit":{"type":"string","description":"Unit qualifier for the value when the source text carried one (e.g. months, per square foot).","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.3.effectiveDateOfRight.oneOf.1.unit","typeLabel":"string"},"capturedData":{"type":"string","description":"The value as captured during extraction, as text.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.3.effectiveDateOfRight.oneOf.1.capturedData","typeLabel":"string"},"ocrText":{"type":"string","description":"Raw source text the value was extracted from.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.3.effectiveDateOfRight.oneOf.1.ocrText","typeLabel":"string"},"value":{"type":"string","description":"Present when `kind` is `date`. The captured date, `yyyy-MM-dd`. Omitted when the captured text was not parseable as a date; `capturedData` still holds what was captured.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.3.effectiveDateOfRight.oneOf.1.value","typeLabel":"string"}},"uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.3.effectiveDateOfRight.oneOf.1","typeLabel":"date · object"},{"type":"object","title":"dateRange","description":"When the current version of the right takes effect. Defaults to the parent tag's own effective date, which arrives as `date` with no `unit` because nothing was captured for it; an `\u003coption>.effectiveDateOfRight` cor tag overrides that. Shape follows the unit it was captured with: a stated deadline arrives as `date`, a period the lease measures rather than dates arrives as `number` — read `unit` for what it counts — and a window as `dateRange`.","required":["kind"],"properties":{"kind":{"type":"string","description":"Discriminator for this shape — always `dateRange` here.","enum":["dateRange"],"isRequired":true,"uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.3.effectiveDateOfRight.oneOf.2.kind","typeLabel":"enum\u003cstring>"},"unit":{"type":"string","description":"Unit qualifier for the value when the source text carried one (e.g. months, per square foot).","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.3.effectiveDateOfRight.oneOf.2.unit","typeLabel":"string"},"capturedData":{"type":"string","description":"The value as captured during extraction, as text.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.3.effectiveDateOfRight.oneOf.2.capturedData","typeLabel":"string"},"ocrText":{"type":"string","description":"Raw source text the value was extracted from.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.3.effectiveDateOfRight.oneOf.2.ocrText","typeLabel":"string"},"start":{"type":"string","description":"Present when `kind` is `dateRange`. Inclusive start of the range, `yyyy-MM-dd`. Omitted together with `end` when `capturedData` could not be split into a parseable pair.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.3.effectiveDateOfRight.oneOf.2.start","typeLabel":"string"},"end":{"type":"string","description":"Present when `kind` is `dateRange`. Inclusive end of the range, `yyyy-MM-dd`. Omitted together with `start` when `capturedData` could not be split into a parseable pair.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.3.effectiveDateOfRight.oneOf.2.end","typeLabel":"string"}},"uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.3.effectiveDateOfRight.oneOf.2","typeLabel":"dateRange · object"},{"type":"object","title":"text","description":"When the current version of the right takes effect. Defaults to the parent tag's own effective date, which arrives as `date` with no `unit` because nothing was captured for it; an `\u003coption>.effectiveDateOfRight` cor tag overrides that. Shape follows the unit it was captured with: a stated deadline arrives as `date`, a period the lease measures rather than dates arrives as `number` — read `unit` for what it counts — and a window as `dateRange`.","required":["kind"],"properties":{"kind":{"type":"string","description":"Discriminator for this shape — always `text` here.","enum":["text"],"isRequired":true,"uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.3.effectiveDateOfRight.oneOf.3.kind","typeLabel":"enum\u003cstring>"},"unit":{"type":"string","description":"Unit qualifier for the value when the source text carried one (e.g. months, per square foot).","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.3.effectiveDateOfRight.oneOf.3.unit","typeLabel":"string"},"capturedData":{"type":"string","description":"The value as captured during extraction, as text.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.3.effectiveDateOfRight.oneOf.3.capturedData","typeLabel":"string"},"ocrText":{"type":"string","description":"Raw source text the value was extracted from.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.3.effectiveDateOfRight.oneOf.3.ocrText","typeLabel":"string"},"value":{"type":"string","description":"The typed value. Its JSON type follows `kind`: a number for `number` and `percent`, a `yyyy-MM-dd` string for `date`, a decimal string for `money`, and the captured text for `text`. Omitted when `capturedData` could not be parsed into that type.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.3.effectiveDateOfRight.oneOf.3.value","typeLabel":"string"}},"uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.3.effectiveDateOfRight.oneOf.3","typeLabel":"text · object"}],"uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.3.effectiveDateOfRight","typeLabel":"number · object | date · object | dateRange · object | text · object"},"clause":{"type":"string","description":"Some Tags capture a simple clause rather than more in-depth data, represented here when that is the case.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.3.clause","typeLabel":"string"},"amendingTag":{"type":"object","description":"The same reference the Tag carries in its own `amendingTag` — both are built from this option's `referenceId`, so reading either gives the option this one amends. Repeated here so a caller working inside `tagComponents` does not have to climb back out to the Tag.","properties":{"effectiveDate":{"type":"string","description":"Effective date of the referenced Tag — the amended option, or the parent option when this sits on a component. Not the effective date of the Tag carrying this reference.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.3.amendingTag.effectiveDate","typeLabel":"string"},"amendedTagId":{"type":"string","description":"Id the Tag's `referenceId` points at: the earlier option this one amends, or the parent option container when this sits on a component Tag.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.3.amendingTag.amendedTagId","typeLabel":"string"}},"uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.3.amendingTag","typeLabel":"object"},"componentTags":{"type":"object","additionalProperties":{"type":"object","description":"A pointer to another Tag. These are the values of a component's `componentTags` map, one per constituent tag the option or right was assembled from, keyed by the part of that tag's `tagName` after the dot. The component surfaces those tags' values on its own fields; fetch a Tag by id with the [get tag endpoint](/api-reference/v2/tags/get-tag) when you need its citations, status, or raw captured text.","properties":{"id":{"type":"string","description":"Tag Id (UUID) of the referenced tag.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.3.componentTags.additionalProperties.id","typeLabel":"string"},"displayName":{"type":"string","description":"Display name of the referenced tag.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.3.componentTags.additionalProperties.displayName","typeLabel":"string"}},"uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.3.componentTags.additionalProperties","typeLabel":"object"},"description":"References to the constituent tags this component was assembled from, keyed by component field.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.3.componentTags","typeLabel":"object"},"advancedNoticePeriod":{"oneOf":[{"type":"object","title":"number","description":"Notice the tenant must give to exercise the expansion right. Shape follows the unit the term was captured with: `number` for a plain count, `date` for a stated deadline, and `numberRange` or `dateRange` when the lease states a window rather than a single figure.","required":["kind"],"properties":{"kind":{"type":"string","description":"Discriminator for this shape — always `number` here.","enum":["number"],"isRequired":true,"uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.3.advancedNoticePeriod.oneOf.0.kind","typeLabel":"enum\u003cstring>"},"unit":{"type":"string","description":"Unit qualifier for the value when the source text carried one (e.g. months, per square foot).","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.3.advancedNoticePeriod.oneOf.0.unit","typeLabel":"string"},"capturedData":{"type":"string","description":"The value as captured during extraction, as text.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.3.advancedNoticePeriod.oneOf.0.capturedData","typeLabel":"string"},"ocrText":{"type":"string","description":"Raw source text the value was extracted from.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.3.advancedNoticePeriod.oneOf.0.ocrText","typeLabel":"string"},"value":{"type":"number","description":"The typed value. Its JSON type follows `kind`: a number for `number` and `percent`, a `yyyy-MM-dd` string for `date`, a decimal string for `money`, and the captured text for `text`. Omitted when `capturedData` could not be parsed into that type.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.3.advancedNoticePeriod.oneOf.0.value","typeLabel":"number"}},"uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.3.advancedNoticePeriod.oneOf.0","typeLabel":"number · object"},{"type":"object","title":"date","description":"Notice the tenant must give to exercise the expansion right. Shape follows the unit the term was captured with: `number` for a plain count, `date` for a stated deadline, and `numberRange` or `dateRange` when the lease states a window rather than a single figure.","required":["kind"],"properties":{"kind":{"type":"string","description":"Discriminator for this shape — always `date` here.","enum":["date"],"isRequired":true,"uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.3.advancedNoticePeriod.oneOf.1.kind","typeLabel":"enum\u003cstring>"},"unit":{"type":"string","description":"Unit qualifier for the value when the source text carried one (e.g. months, per square foot).","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.3.advancedNoticePeriod.oneOf.1.unit","typeLabel":"string"},"capturedData":{"type":"string","description":"The value as captured during extraction, as text.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.3.advancedNoticePeriod.oneOf.1.capturedData","typeLabel":"string"},"ocrText":{"type":"string","description":"Raw source text the value was extracted from.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.3.advancedNoticePeriod.oneOf.1.ocrText","typeLabel":"string"},"value":{"type":"string","description":"Present when `kind` is `date`. The captured date, `yyyy-MM-dd`. Omitted when the captured text was not parseable as a date; `capturedData` still holds what was captured.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.3.advancedNoticePeriod.oneOf.1.value","typeLabel":"string"}},"uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.3.advancedNoticePeriod.oneOf.1","typeLabel":"date · object"},{"type":"object","title":"numberRange","description":"Notice the tenant must give to exercise the expansion right. Shape follows the unit the term was captured with: `number` for a plain count, `date` for a stated deadline, and `numberRange` or `dateRange` when the lease states a window rather than a single figure.","required":["kind"],"properties":{"kind":{"type":"string","description":"Discriminator for this shape — always `numberRange` here.","enum":["numberRange"],"isRequired":true,"uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.3.advancedNoticePeriod.oneOf.2.kind","typeLabel":"enum\u003cstring>"},"unit":{"type":"string","description":"Unit qualifier for the value when the source text carried one (e.g. months, per square foot).","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.3.advancedNoticePeriod.oneOf.2.unit","typeLabel":"string"},"capturedData":{"type":"string","description":"The value as captured during extraction, as text.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.3.advancedNoticePeriod.oneOf.2.capturedData","typeLabel":"string"},"ocrText":{"type":"string","description":"Raw source text the value was extracted from.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.3.advancedNoticePeriod.oneOf.2.ocrText","typeLabel":"string"},"start":{"type":"integer","format":"int32","description":"Inclusive start of the range: a `yyyy-MM-dd` string for `dateRange`, an integer for `numberRange`. Omitted together with `end` when `capturedData` could not be split into a parseable pair.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.3.advancedNoticePeriod.oneOf.2.start","typeLabel":"integer\u003cint32>"},"end":{"type":"integer","format":"int32","description":"Inclusive end of the range: a `yyyy-MM-dd` string for `dateRange`, an integer for `numberRange`. Omitted together with `start` when `capturedData` could not be split into a parseable pair.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.3.advancedNoticePeriod.oneOf.2.end","typeLabel":"integer\u003cint32>"}},"uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.3.advancedNoticePeriod.oneOf.2","typeLabel":"numberRange · object"},{"type":"object","title":"dateRange","description":"Notice the tenant must give to exercise the expansion right. Shape follows the unit the term was captured with: `number` for a plain count, `date` for a stated deadline, and `numberRange` or `dateRange` when the lease states a window rather than a single figure.","required":["kind"],"properties":{"kind":{"type":"string","description":"Discriminator for this shape — always `dateRange` here.","enum":["dateRange"],"isRequired":true,"uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.3.advancedNoticePeriod.oneOf.3.kind","typeLabel":"enum\u003cstring>"},"unit":{"type":"string","description":"Unit qualifier for the value when the source text carried one (e.g. months, per square foot).","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.3.advancedNoticePeriod.oneOf.3.unit","typeLabel":"string"},"capturedData":{"type":"string","description":"The value as captured during extraction, as text.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.3.advancedNoticePeriod.oneOf.3.capturedData","typeLabel":"string"},"ocrText":{"type":"string","description":"Raw source text the value was extracted from.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.3.advancedNoticePeriod.oneOf.3.ocrText","typeLabel":"string"},"start":{"type":"string","description":"Present when `kind` is `dateRange`. Inclusive start of the range, `yyyy-MM-dd`. Omitted together with `end` when `capturedData` could not be split into a parseable pair.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.3.advancedNoticePeriod.oneOf.3.start","typeLabel":"string"},"end":{"type":"string","description":"Present when `kind` is `dateRange`. Inclusive end of the range, `yyyy-MM-dd`. Omitted together with `start` when `capturedData` could not be split into a parseable pair.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.3.advancedNoticePeriod.oneOf.3.end","typeLabel":"string"}},"uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.3.advancedNoticePeriod.oneOf.3","typeLabel":"dateRange · object"},{"type":"object","title":"text","description":"Notice the tenant must give to exercise the expansion right. Shape follows the unit the term was captured with: `number` for a plain count, `date` for a stated deadline, and `numberRange` or `dateRange` when the lease states a window rather than a single figure.","required":["kind"],"properties":{"kind":{"type":"string","description":"Discriminator for this shape — always `text` here.","enum":["text"],"isRequired":true,"uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.3.advancedNoticePeriod.oneOf.4.kind","typeLabel":"enum\u003cstring>"},"unit":{"type":"string","description":"Unit qualifier for the value when the source text carried one (e.g. months, per square foot).","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.3.advancedNoticePeriod.oneOf.4.unit","typeLabel":"string"},"capturedData":{"type":"string","description":"The value as captured during extraction, as text.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.3.advancedNoticePeriod.oneOf.4.capturedData","typeLabel":"string"},"ocrText":{"type":"string","description":"Raw source text the value was extracted from.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.3.advancedNoticePeriod.oneOf.4.ocrText","typeLabel":"string"},"value":{"type":"string","description":"The typed value. Its JSON type follows `kind`: a number for `number` and `percent`, a `yyyy-MM-dd` string for `date`, a decimal string for `money`, and the captured text for `text`. Omitted when `capturedData` could not be parsed into that type.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.3.advancedNoticePeriod.oneOf.4.value","typeLabel":"string"}},"uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.3.advancedNoticePeriod.oneOf.4","typeLabel":"text · object"}],"uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.3.advancedNoticePeriod","typeLabel":"number · object | date · object | numberRange · object | dateRange · object | text · object"},"acceptancePeriod":{"oneOf":[{"type":"object","title":"number","description":"Window to accept once the option is triggered. Shape follows the unit the term was captured with: a stated length arrives as `number` — read `unit` for what it counts — and a period the lease words rather than counts arrives as `text`.","required":["kind"],"properties":{"kind":{"type":"string","description":"Discriminator for this shape — always `number` here.","enum":["number"],"isRequired":true,"uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.3.acceptancePeriod.oneOf.0.kind","typeLabel":"enum\u003cstring>"},"unit":{"type":"string","description":"Unit qualifier for the value when the source text carried one (e.g. months, per square foot).","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.3.acceptancePeriod.oneOf.0.unit","typeLabel":"string"},"capturedData":{"type":"string","description":"The value as captured during extraction, as text.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.3.acceptancePeriod.oneOf.0.capturedData","typeLabel":"string"},"ocrText":{"type":"string","description":"Raw source text the value was extracted from.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.3.acceptancePeriod.oneOf.0.ocrText","typeLabel":"string"},"value":{"type":"number","description":"The typed value. Its JSON type follows `kind`: a number for `number` and `percent`, a `yyyy-MM-dd` string for `date`, a decimal string for `money`, and the captured text for `text`. Omitted when `capturedData` could not be parsed into that type.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.3.acceptancePeriod.oneOf.0.value","typeLabel":"number"}},"uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.3.acceptancePeriod.oneOf.0","typeLabel":"number · object"},{"type":"object","title":"text","description":"Window to accept once the option is triggered. Shape follows the unit the term was captured with: a stated length arrives as `number` — read `unit` for what it counts — and a period the lease words rather than counts arrives as `text`.","required":["kind"],"properties":{"kind":{"type":"string","description":"Discriminator for this shape — always `text` here.","enum":["text"],"isRequired":true,"uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.3.acceptancePeriod.oneOf.1.kind","typeLabel":"enum\u003cstring>"},"unit":{"type":"string","description":"Unit qualifier for the value when the source text carried one (e.g. months, per square foot).","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.3.acceptancePeriod.oneOf.1.unit","typeLabel":"string"},"capturedData":{"type":"string","description":"The value as captured during extraction, as text.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.3.acceptancePeriod.oneOf.1.capturedData","typeLabel":"string"},"ocrText":{"type":"string","description":"Raw source text the value was extracted from.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.3.acceptancePeriod.oneOf.1.ocrText","typeLabel":"string"},"value":{"type":"string","description":"The typed value. Its JSON type follows `kind`: a number for `number` and `percent`, a `yyyy-MM-dd` string for `date`, a decimal string for `money`, and the captured text for `text`. Omitted when `capturedData` could not be parsed into that type.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.3.acceptancePeriod.oneOf.1.value","typeLabel":"string"}},"uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.3.acceptancePeriod.oneOf.1","typeLabel":"text · object"}],"uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.3.acceptancePeriod","typeLabel":"number · object | text · object"},"rentalRate":{"oneOf":[{"type":"object","title":"money","description":"Rent rate for the expansion space, when stated. Shape follows the unit the rate was captured with: a stated dollar rate arrives as `money` with the lease's currency, and a percentage of fair market value as `percent`. A rate the lease words rather than states — most often fair market value itself — arrives as `text`, with the wording in `capturedData`. A rate the lease leaves to the landlord also arrives as `text`, with `capturedData` set to `landlordDefined`.","required":["kind"],"properties":{"kind":{"type":"string","description":"Discriminator for this shape — always `money` here.","enum":["money"],"isRequired":true,"uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.3.rentalRate.oneOf.0.kind","typeLabel":"enum\u003cstring>"},"unit":{"type":"string","description":"Unit qualifier for the value when the source text carried one (e.g. months, per square foot).","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.3.rentalRate.oneOf.0.unit","typeLabel":"string"},"capturedData":{"type":"string","description":"The value as captured during extraction, as text.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.3.rentalRate.oneOf.0.capturedData","typeLabel":"string"},"ocrText":{"type":"string","description":"Raw source text the value was extracted from.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.3.rentalRate.oneOf.0.ocrText","typeLabel":"string"},"value":{"type":"string","description":"Present when `kind` is `money`. Decimal string (not a JSON number) holding a BigDecimal rounded to 2 decimals — preserves cent precision through JSON, e.g. \"120000.00\".","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.3.rentalRate.oneOf.0.value","typeLabel":"string"},"currency":{"type":"string","description":"Currency code for the value (e.g. USD).","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.3.rentalRate.oneOf.0.currency","typeLabel":"string"}},"uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.3.rentalRate.oneOf.0","typeLabel":"money · object"},{"type":"object","title":"percent","description":"Rent rate for the expansion space, when stated. Shape follows the unit the rate was captured with: a stated dollar rate arrives as `money` with the lease's currency, and a percentage of fair market value as `percent`. A rate the lease words rather than states — most often fair market value itself — arrives as `text`, with the wording in `capturedData`. A rate the lease leaves to the landlord also arrives as `text`, with `capturedData` set to `landlordDefined`.","required":["kind"],"properties":{"kind":{"type":"string","description":"Discriminator for this shape — always `percent` here.","enum":["percent"],"isRequired":true,"uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.3.rentalRate.oneOf.1.kind","typeLabel":"enum\u003cstring>"},"unit":{"type":"string","description":"Unit qualifier for the value when the source text carried one (e.g. months, per square foot).","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.3.rentalRate.oneOf.1.unit","typeLabel":"string"},"capturedData":{"type":"string","description":"The value as captured during extraction, as text.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.3.rentalRate.oneOf.1.capturedData","typeLabel":"string"},"ocrText":{"type":"string","description":"Raw source text the value was extracted from.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.3.rentalRate.oneOf.1.ocrText","typeLabel":"string"},"value":{"type":"number","description":"The typed value. Its JSON type follows `kind`: a number for `number` and `percent`, a `yyyy-MM-dd` string for `date`, a decimal string for `money`, and the captured text for `text`. Omitted when `capturedData` could not be parsed into that type.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.3.rentalRate.oneOf.1.value","typeLabel":"number"}},"uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.3.rentalRate.oneOf.1","typeLabel":"percent · object"},{"type":"object","title":"text","description":"Rent rate for the expansion space, when stated. Shape follows the unit the rate was captured with: a stated dollar rate arrives as `money` with the lease's currency, and a percentage of fair market value as `percent`. A rate the lease words rather than states — most often fair market value itself — arrives as `text`, with the wording in `capturedData`. A rate the lease leaves to the landlord also arrives as `text`, with `capturedData` set to `landlordDefined`.","required":["kind"],"properties":{"kind":{"type":"string","description":"Discriminator for this shape — always `text` here.","enum":["text"],"isRequired":true,"uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.3.rentalRate.oneOf.2.kind","typeLabel":"enum\u003cstring>"},"unit":{"type":"string","description":"Unit qualifier for the value when the source text carried one (e.g. months, per square foot).","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.3.rentalRate.oneOf.2.unit","typeLabel":"string"},"capturedData":{"type":"string","description":"The value as captured during extraction, as text.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.3.rentalRate.oneOf.2.capturedData","typeLabel":"string"},"ocrText":{"type":"string","description":"Raw source text the value was extracted from.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.3.rentalRate.oneOf.2.ocrText","typeLabel":"string"},"value":{"type":"string","description":"The typed value. Its JSON type follows `kind`: a number for `number` and `percent`, a `yyyy-MM-dd` string for `date`, a decimal string for `money`, and the captured text for `text`. Omitted when `capturedData` could not be parsed into that type.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.3.rentalRate.oneOf.2.value","typeLabel":"string"}},"uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.3.rentalRate.oneOf.2","typeLabel":"text · object"}],"uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.3.rentalRate","typeLabel":"money · object | percent · object | text · object"},"expirationDate":{"oneOf":[{"type":"object","title":"number","description":"When the expansion right expires. Shape follows the unit it was captured with: a stated deadline arrives as `date`, and a deadline the lease states in relative terms arrives as `number` — read `unit` for what it counts. Wording that is neither arrives as `text`, and `capturedData` always holds the raw value.","required":["kind"],"properties":{"kind":{"type":"string","description":"Discriminator for this shape — always `number` here.","enum":["number"],"isRequired":true,"uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.3.expirationDate.oneOf.0.kind","typeLabel":"enum\u003cstring>"},"unit":{"type":"string","description":"Unit qualifier for the value when the source text carried one (e.g. months, per square foot).","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.3.expirationDate.oneOf.0.unit","typeLabel":"string"},"capturedData":{"type":"string","description":"The value as captured during extraction, as text.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.3.expirationDate.oneOf.0.capturedData","typeLabel":"string"},"ocrText":{"type":"string","description":"Raw source text the value was extracted from.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.3.expirationDate.oneOf.0.ocrText","typeLabel":"string"},"value":{"type":"number","description":"The typed value. Its JSON type follows `kind`: a number for `number` and `percent`, a `yyyy-MM-dd` string for `date`, a decimal string for `money`, and the captured text for `text`. Omitted when `capturedData` could not be parsed into that type.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.3.expirationDate.oneOf.0.value","typeLabel":"number"}},"uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.3.expirationDate.oneOf.0","typeLabel":"number · object"},{"type":"object","title":"date","description":"When the expansion right expires. Shape follows the unit it was captured with: a stated deadline arrives as `date`, and a deadline the lease states in relative terms arrives as `number` — read `unit` for what it counts. Wording that is neither arrives as `text`, and `capturedData` always holds the raw value.","required":["kind"],"properties":{"kind":{"type":"string","description":"Discriminator for this shape — always `date` here.","enum":["date"],"isRequired":true,"uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.3.expirationDate.oneOf.1.kind","typeLabel":"enum\u003cstring>"},"unit":{"type":"string","description":"Unit qualifier for the value when the source text carried one (e.g. months, per square foot).","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.3.expirationDate.oneOf.1.unit","typeLabel":"string"},"capturedData":{"type":"string","description":"The value as captured during extraction, as text.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.3.expirationDate.oneOf.1.capturedData","typeLabel":"string"},"ocrText":{"type":"string","description":"Raw source text the value was extracted from.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.3.expirationDate.oneOf.1.ocrText","typeLabel":"string"},"value":{"type":"string","description":"Present when `kind` is `date`. The captured date, `yyyy-MM-dd`. Omitted when the captured text was not parseable as a date; `capturedData` still holds what was captured.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.3.expirationDate.oneOf.1.value","typeLabel":"string"}},"uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.3.expirationDate.oneOf.1","typeLabel":"date · object"},{"type":"object","title":"text","description":"When the expansion right expires. Shape follows the unit it was captured with: a stated deadline arrives as `date`, and a deadline the lease states in relative terms arrives as `number` — read `unit` for what it counts. Wording that is neither arrives as `text`, and `capturedData` always holds the raw value.","required":["kind"],"properties":{"kind":{"type":"string","description":"Discriminator for this shape — always `text` here.","enum":["text"],"isRequired":true,"uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.3.expirationDate.oneOf.2.kind","typeLabel":"enum\u003cstring>"},"unit":{"type":"string","description":"Unit qualifier for the value when the source text carried one (e.g. months, per square foot).","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.3.expirationDate.oneOf.2.unit","typeLabel":"string"},"capturedData":{"type":"string","description":"The value as captured during extraction, as text.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.3.expirationDate.oneOf.2.capturedData","typeLabel":"string"},"ocrText":{"type":"string","description":"Raw source text the value was extracted from.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.3.expirationDate.oneOf.2.ocrText","typeLabel":"string"},"value":{"type":"string","description":"The typed value. Its JSON type follows `kind`: a number for `number` and `percent`, a `yyyy-MM-dd` string for `date`, a decimal string for `money`, and the captured text for `text`. Omitted when `capturedData` could not be parsed into that type.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.3.expirationDate.oneOf.2.value","typeLabel":"string"}},"uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.3.expirationDate.oneOf.2","typeLabel":"text · object"}],"uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.3.expirationDate","typeLabel":"number · object | date · object | text · object"},"expansionSpace":{"type":"array","description":"Spaces the tenant may take, in the same shape as a Tag's `applicableSpaces`: suite names matched against `BuildingSpace.suiteNumber` by string, with the `Entire building` and `All spaces` sentinels for whole-building scope.","items":{"type":"object","description":"Reference to space in a Building: one Building Space suiteNumber, an entire floor, the entire Building, or all spaces. `scope` says which of those it is, and `name` carries the label — for `BUILDING` and `ALL` that label is the sentinel `Entire building` or `All spaces` rather than the name of a real Building Space. The `ALL` scope means all suites in the relevant context are referenced: a Tag with `scope: ALL` refers to every suite defined in the suiteNumber tag belonging to that Document or Lease.","properties":{"name":{"type":"string","description":"The space's display name: a suite name that matches `BuildingSpace.suiteNumber` by string (scope SUITE), a floor designation (scope FLOOR), or the sentinels `Entire building` / `All spaces`.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.3.expansionSpace.items.[INDEX].name","typeLabel":"string"},"buildingId":{"type":"string","description":"Building this entry refers to. Can differ from the parent lease's own Building when a lease spans multiple buildings or has relocated.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.3.expansionSpace.items.[INDEX].buildingId","typeLabel":"string"},"scope":{"type":"string","description":"Granularity of the reference: SUITE (one suite), FLOOR (a whole floor), BUILDING (the entire building), or ALL (all spaces).","enum":["BUILDING","FLOOR","SUITE","ALL"],"uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.3.expansionSpace.items.[INDEX].scope","typeLabel":"enum\u003cstring>"}},"uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.3.expansionSpace.items.[INDEX]","typeLabel":"object"},"uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.3.expansionSpace","typeLabel":"object[]"},"effectivePeriod":{"type":"object","title":"dateRange","description":"Date range during which the right may be exercised.","required":["kind"],"properties":{"kind":{"type":"string","description":"Discriminator for this shape — always `dateRange` here.","enum":["dateRange"],"isRequired":true,"uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.3.effectivePeriod.kind","typeLabel":"enum\u003cstring>"},"unit":{"type":"string","description":"Unit qualifier for the value when the source text carried one (e.g. months, per square foot).","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.3.effectivePeriod.unit","typeLabel":"string"},"capturedData":{"type":"string","description":"The value as captured during extraction, as text.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.3.effectivePeriod.capturedData","typeLabel":"string"},"ocrText":{"type":"string","description":"Raw source text the value was extracted from.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.3.effectivePeriod.ocrText","typeLabel":"string"},"start":{"type":"string","description":"Present when `kind` is `dateRange`. Inclusive start of the range, `yyyy-MM-dd`. Omitted together with `end` when `capturedData` could not be split into a parseable pair.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.3.effectivePeriod.start","typeLabel":"string"},"end":{"type":"string","description":"Present when `kind` is `dateRange`. Inclusive end of the range, `yyyy-MM-dd`. Omitted together with `start` when `capturedData` could not be split into a parseable pair.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.3.effectivePeriod.end","typeLabel":"string"}},"uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.3.effectivePeriod","typeLabel":"dateRange · object"}},"uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.3","typeLabel":"EXPANSION · object"},{"type":"object","title":"FEE","description":"Structured detail for COMPLEX tags (options and rights). Branch on its `kind`. Null for STANDARD tags.","required":["kind"],"properties":{"kind":{"type":"string","description":"Discriminator for this shape — always `FEE` here.","enum":["FEE"],"isRequired":true,"uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.4.kind","typeLabel":"enum\u003cstring>"},"rightStatus":{"type":"string","description":"Status of the option/right itself. Independent of the tag record's `lifecycleStatus` — the two are resolved independently and can disagree.","enum":["AVAILABLE","EXERCISED","STRICKEN","DECLINED","EXPIRED","UNKNOWN"],"uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.4.rightStatus","typeLabel":"enum\u003cstring>"},"rightIsStricken":{"type":"string","description":"Indicator the right was stricken from the lease via a Stricken clause; see `rightStatus` for the resolved state.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.4.rightIsStricken","typeLabel":"string"},"customLabel":{"type":"string","description":"Label denoting the option family this option belongs to. Options with the same `referenceId` should also shared the same `customLabel`","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.4.customLabel","typeLabel":"string"},"effectiveDateOfRight":{"oneOf":[{"type":"object","title":"number","description":"When the current version of the right takes effect. Defaults to the parent tag's own effective date, which arrives as `date` with no `unit` because nothing was captured for it; an `\u003coption>.effectiveDateOfRight` cor tag overrides that. Shape follows the unit it was captured with: a stated deadline arrives as `date`, a period the lease measures rather than dates arrives as `number` — read `unit` for what it counts — and a window as `dateRange`.","required":["kind"],"properties":{"kind":{"type":"string","description":"Discriminator for this shape — always `number` here.","enum":["number"],"isRequired":true,"uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.4.effectiveDateOfRight.oneOf.0.kind","typeLabel":"enum\u003cstring>"},"unit":{"type":"string","description":"Unit qualifier for the value when the source text carried one (e.g. months, per square foot).","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.4.effectiveDateOfRight.oneOf.0.unit","typeLabel":"string"},"capturedData":{"type":"string","description":"The value as captured during extraction, as text.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.4.effectiveDateOfRight.oneOf.0.capturedData","typeLabel":"string"},"ocrText":{"type":"string","description":"Raw source text the value was extracted from.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.4.effectiveDateOfRight.oneOf.0.ocrText","typeLabel":"string"},"value":{"type":"number","description":"The typed value. Its JSON type follows `kind`: a number for `number` and `percent`, a `yyyy-MM-dd` string for `date`, a decimal string for `money`, and the captured text for `text`. Omitted when `capturedData` could not be parsed into that type.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.4.effectiveDateOfRight.oneOf.0.value","typeLabel":"number"}},"uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.4.effectiveDateOfRight.oneOf.0","typeLabel":"number · object"},{"type":"object","title":"date","description":"When the current version of the right takes effect. Defaults to the parent tag's own effective date, which arrives as `date` with no `unit` because nothing was captured for it; an `\u003coption>.effectiveDateOfRight` cor tag overrides that. Shape follows the unit it was captured with: a stated deadline arrives as `date`, a period the lease measures rather than dates arrives as `number` — read `unit` for what it counts — and a window as `dateRange`.","required":["kind"],"properties":{"kind":{"type":"string","description":"Discriminator for this shape — always `date` here.","enum":["date"],"isRequired":true,"uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.4.effectiveDateOfRight.oneOf.1.kind","typeLabel":"enum\u003cstring>"},"unit":{"type":"string","description":"Unit qualifier for the value when the source text carried one (e.g. months, per square foot).","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.4.effectiveDateOfRight.oneOf.1.unit","typeLabel":"string"},"capturedData":{"type":"string","description":"The value as captured during extraction, as text.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.4.effectiveDateOfRight.oneOf.1.capturedData","typeLabel":"string"},"ocrText":{"type":"string","description":"Raw source text the value was extracted from.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.4.effectiveDateOfRight.oneOf.1.ocrText","typeLabel":"string"},"value":{"type":"string","description":"Present when `kind` is `date`. The captured date, `yyyy-MM-dd`. Omitted when the captured text was not parseable as a date; `capturedData` still holds what was captured.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.4.effectiveDateOfRight.oneOf.1.value","typeLabel":"string"}},"uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.4.effectiveDateOfRight.oneOf.1","typeLabel":"date · object"},{"type":"object","title":"dateRange","description":"When the current version of the right takes effect. Defaults to the parent tag's own effective date, which arrives as `date` with no `unit` because nothing was captured for it; an `\u003coption>.effectiveDateOfRight` cor tag overrides that. Shape follows the unit it was captured with: a stated deadline arrives as `date`, a period the lease measures rather than dates arrives as `number` — read `unit` for what it counts — and a window as `dateRange`.","required":["kind"],"properties":{"kind":{"type":"string","description":"Discriminator for this shape — always `dateRange` here.","enum":["dateRange"],"isRequired":true,"uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.4.effectiveDateOfRight.oneOf.2.kind","typeLabel":"enum\u003cstring>"},"unit":{"type":"string","description":"Unit qualifier for the value when the source text carried one (e.g. months, per square foot).","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.4.effectiveDateOfRight.oneOf.2.unit","typeLabel":"string"},"capturedData":{"type":"string","description":"The value as captured during extraction, as text.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.4.effectiveDateOfRight.oneOf.2.capturedData","typeLabel":"string"},"ocrText":{"type":"string","description":"Raw source text the value was extracted from.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.4.effectiveDateOfRight.oneOf.2.ocrText","typeLabel":"string"},"start":{"type":"string","description":"Present when `kind` is `dateRange`. Inclusive start of the range, `yyyy-MM-dd`. Omitted together with `end` when `capturedData` could not be split into a parseable pair.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.4.effectiveDateOfRight.oneOf.2.start","typeLabel":"string"},"end":{"type":"string","description":"Present when `kind` is `dateRange`. Inclusive end of the range, `yyyy-MM-dd`. Omitted together with `start` when `capturedData` could not be split into a parseable pair.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.4.effectiveDateOfRight.oneOf.2.end","typeLabel":"string"}},"uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.4.effectiveDateOfRight.oneOf.2","typeLabel":"dateRange · object"},{"type":"object","title":"text","description":"When the current version of the right takes effect. Defaults to the parent tag's own effective date, which arrives as `date` with no `unit` because nothing was captured for it; an `\u003coption>.effectiveDateOfRight` cor tag overrides that. Shape follows the unit it was captured with: a stated deadline arrives as `date`, a period the lease measures rather than dates arrives as `number` — read `unit` for what it counts — and a window as `dateRange`.","required":["kind"],"properties":{"kind":{"type":"string","description":"Discriminator for this shape — always `text` here.","enum":["text"],"isRequired":true,"uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.4.effectiveDateOfRight.oneOf.3.kind","typeLabel":"enum\u003cstring>"},"unit":{"type":"string","description":"Unit qualifier for the value when the source text carried one (e.g. months, per square foot).","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.4.effectiveDateOfRight.oneOf.3.unit","typeLabel":"string"},"capturedData":{"type":"string","description":"The value as captured during extraction, as text.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.4.effectiveDateOfRight.oneOf.3.capturedData","typeLabel":"string"},"ocrText":{"type":"string","description":"Raw source text the value was extracted from.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.4.effectiveDateOfRight.oneOf.3.ocrText","typeLabel":"string"},"value":{"type":"string","description":"The typed value. Its JSON type follows `kind`: a number for `number` and `percent`, a `yyyy-MM-dd` string for `date`, a decimal string for `money`, and the captured text for `text`. Omitted when `capturedData` could not be parsed into that type.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.4.effectiveDateOfRight.oneOf.3.value","typeLabel":"string"}},"uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.4.effectiveDateOfRight.oneOf.3","typeLabel":"text · object"}],"uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.4.effectiveDateOfRight","typeLabel":"number · object | date · object | dateRange · object | text · object"},"clause":{"type":"string","description":"Some Tags capture a simple clause rather than more in-depth data, represented here when that is the case.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.4.clause","typeLabel":"string"},"amendingTag":{"type":"object","description":"The same reference the Tag carries in its own `amendingTag` — both are built from this option's `referenceId`, so reading either gives the option this one amends. Repeated here so a caller working inside `tagComponents` does not have to climb back out to the Tag.","properties":{"effectiveDate":{"type":"string","description":"Effective date of the referenced Tag — the amended option, or the parent option when this sits on a component. Not the effective date of the Tag carrying this reference.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.4.amendingTag.effectiveDate","typeLabel":"string"},"amendedTagId":{"type":"string","description":"Id the Tag's `referenceId` points at: the earlier option this one amends, or the parent option container when this sits on a component Tag.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.4.amendingTag.amendedTagId","typeLabel":"string"}},"uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.4.amendingTag","typeLabel":"object"},"componentTags":{"type":"object","additionalProperties":{"type":"object","description":"A pointer to another Tag. These are the values of a component's `componentTags` map, one per constituent tag the option or right was assembled from, keyed by the part of that tag's `tagName` after the dot. The component surfaces those tags' values on its own fields; fetch a Tag by id with the [get tag endpoint](/api-reference/v2/tags/get-tag) when you need its citations, status, or raw captured text.","properties":{"id":{"type":"string","description":"Tag Id (UUID) of the referenced tag.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.4.componentTags.additionalProperties.id","typeLabel":"string"},"displayName":{"type":"string","description":"Display name of the referenced tag.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.4.componentTags.additionalProperties.displayName","typeLabel":"string"}},"uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.4.componentTags.additionalProperties","typeLabel":"object"},"description":"References to the constituent tags this component was assembled from, keyed by component field.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.4.componentTags","typeLabel":"object"},"feeAmount":{"oneOf":[{"type":"object","title":"money","description":"The fee amount. Shape follows the unit the amount was captured with: a stated amount arrives as `money` with the lease's currency, and an amount the lease describes rather than states arrives as `text`, with the wording in `capturedData`.","required":["kind"],"properties":{"kind":{"type":"string","description":"Discriminator for this shape — always `money` here.","enum":["money"],"isRequired":true,"uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.4.feeAmount.oneOf.0.kind","typeLabel":"enum\u003cstring>"},"unit":{"type":"string","description":"Unit qualifier for the value when the source text carried one (e.g. months, per square foot).","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.4.feeAmount.oneOf.0.unit","typeLabel":"string"},"capturedData":{"type":"string","description":"The value as captured during extraction, as text.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.4.feeAmount.oneOf.0.capturedData","typeLabel":"string"},"ocrText":{"type":"string","description":"Raw source text the value was extracted from.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.4.feeAmount.oneOf.0.ocrText","typeLabel":"string"},"value":{"type":"string","description":"Present when `kind` is `money`. Decimal string (not a JSON number) holding a BigDecimal rounded to 2 decimals — preserves cent precision through JSON, e.g. \"120000.00\".","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.4.feeAmount.oneOf.0.value","typeLabel":"string"},"currency":{"type":"string","description":"Currency code for the value (e.g. USD).","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.4.feeAmount.oneOf.0.currency","typeLabel":"string"}},"uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.4.feeAmount.oneOf.0","typeLabel":"money · object"},{"type":"object","title":"text","description":"The fee amount. Shape follows the unit the amount was captured with: a stated amount arrives as `money` with the lease's currency, and an amount the lease describes rather than states arrives as `text`, with the wording in `capturedData`.","required":["kind"],"properties":{"kind":{"type":"string","description":"Discriminator for this shape — always `text` here.","enum":["text"],"isRequired":true,"uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.4.feeAmount.oneOf.1.kind","typeLabel":"enum\u003cstring>"},"unit":{"type":"string","description":"Unit qualifier for the value when the source text carried one (e.g. months, per square foot).","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.4.feeAmount.oneOf.1.unit","typeLabel":"string"},"capturedData":{"type":"string","description":"The value as captured during extraction, as text.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.4.feeAmount.oneOf.1.capturedData","typeLabel":"string"},"ocrText":{"type":"string","description":"Raw source text the value was extracted from.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.4.feeAmount.oneOf.1.ocrText","typeLabel":"string"},"value":{"type":"string","description":"The typed value. Its JSON type follows `kind`: a number for `number` and `percent`, a `yyyy-MM-dd` string for `date`, a decimal string for `money`, and the captured text for `text`. Omitted when `capturedData` could not be parsed into that type.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.4.feeAmount.oneOf.1.value","typeLabel":"string"}},"uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.4.feeAmount.oneOf.1","typeLabel":"text · object"}],"uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.4.feeAmount","typeLabel":"money · object | text · object"},"feeTerm":{"oneOf":[{"type":"object","title":"numberRange","description":"The period the fee runs for. A span of months from commencement arrives as `numberRange` and a pair of dates as `dateRange`, each with `start` and `end` when the captured text parses into a pair. Text that is not a parseable range arrives as `text`, and `capturedData` always holds the raw value.","required":["kind"],"properties":{"kind":{"type":"string","description":"Discriminator for this shape — always `numberRange` here.","enum":["numberRange"],"isRequired":true,"uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.4.feeTerm.oneOf.0.kind","typeLabel":"enum\u003cstring>"},"unit":{"type":"string","description":"Unit qualifier for the value when the source text carried one (e.g. months, per square foot).","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.4.feeTerm.oneOf.0.unit","typeLabel":"string"},"capturedData":{"type":"string","description":"The value as captured during extraction, as text.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.4.feeTerm.oneOf.0.capturedData","typeLabel":"string"},"ocrText":{"type":"string","description":"Raw source text the value was extracted from.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.4.feeTerm.oneOf.0.ocrText","typeLabel":"string"},"start":{"type":"integer","format":"int32","description":"Inclusive start of the range: a `yyyy-MM-dd` string for `dateRange`, an integer for `numberRange`. Omitted together with `end` when `capturedData` could not be split into a parseable pair.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.4.feeTerm.oneOf.0.start","typeLabel":"integer\u003cint32>"},"end":{"type":"integer","format":"int32","description":"Inclusive end of the range: a `yyyy-MM-dd` string for `dateRange`, an integer for `numberRange`. Omitted together with `start` when `capturedData` could not be split into a parseable pair.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.4.feeTerm.oneOf.0.end","typeLabel":"integer\u003cint32>"}},"uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.4.feeTerm.oneOf.0","typeLabel":"numberRange · object"},{"type":"object","title":"dateRange","description":"The period the fee runs for. A span of months from commencement arrives as `numberRange` and a pair of dates as `dateRange`, each with `start` and `end` when the captured text parses into a pair. Text that is not a parseable range arrives as `text`, and `capturedData` always holds the raw value.","required":["kind"],"properties":{"kind":{"type":"string","description":"Discriminator for this shape — always `dateRange` here.","enum":["dateRange"],"isRequired":true,"uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.4.feeTerm.oneOf.1.kind","typeLabel":"enum\u003cstring>"},"unit":{"type":"string","description":"Unit qualifier for the value when the source text carried one (e.g. months, per square foot).","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.4.feeTerm.oneOf.1.unit","typeLabel":"string"},"capturedData":{"type":"string","description":"The value as captured during extraction, as text.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.4.feeTerm.oneOf.1.capturedData","typeLabel":"string"},"ocrText":{"type":"string","description":"Raw source text the value was extracted from.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.4.feeTerm.oneOf.1.ocrText","typeLabel":"string"},"start":{"type":"string","description":"Present when `kind` is `dateRange`. Inclusive start of the range, `yyyy-MM-dd`. Omitted together with `end` when `capturedData` could not be split into a parseable pair.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.4.feeTerm.oneOf.1.start","typeLabel":"string"},"end":{"type":"string","description":"Present when `kind` is `dateRange`. Inclusive end of the range, `yyyy-MM-dd`. Omitted together with `start` when `capturedData` could not be split into a parseable pair.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.4.feeTerm.oneOf.1.end","typeLabel":"string"}},"uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.4.feeTerm.oneOf.1","typeLabel":"dateRange · object"},{"type":"object","title":"text","description":"The period the fee runs for. A span of months from commencement arrives as `numberRange` and a pair of dates as `dateRange`, each with `start` and `end` when the captured text parses into a pair. Text that is not a parseable range arrives as `text`, and `capturedData` always holds the raw value.","required":["kind"],"properties":{"kind":{"type":"string","description":"Discriminator for this shape — always `text` here.","enum":["text"],"isRequired":true,"uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.4.feeTerm.oneOf.2.kind","typeLabel":"enum\u003cstring>"},"unit":{"type":"string","description":"Unit qualifier for the value when the source text carried one (e.g. months, per square foot).","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.4.feeTerm.oneOf.2.unit","typeLabel":"string"},"capturedData":{"type":"string","description":"The value as captured during extraction, as text.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.4.feeTerm.oneOf.2.capturedData","typeLabel":"string"},"ocrText":{"type":"string","description":"Raw source text the value was extracted from.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.4.feeTerm.oneOf.2.ocrText","typeLabel":"string"},"value":{"type":"string","description":"The typed value. Its JSON type follows `kind`: a number for `number` and `percent`, a `yyyy-MM-dd` string for `date`, a decimal string for `money`, and the captured text for `text`. Omitted when `capturedData` could not be parsed into that type.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.4.feeTerm.oneOf.2.value","typeLabel":"string"}},"uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.4.feeTerm.oneOf.2","typeLabel":"text · object"}],"uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.4.feeTerm","typeLabel":"numberRange · object | dateRange · object | text · object"},"feeIncrease":{"oneOf":[{"type":"object","title":"percent","description":"Scheduled increase to the fee, when stated. A percentage arrives as `percent`, carried as the percentage itself; a stated dollar increase arrives as `money` with the lease's currency. This is a summary of the escalation: a fee that steps on explicit dates, or steps to new absolute amounts, is only partly expressed here. Read the tag's `schedule` for the authoritative per-period amounts.","required":["kind"],"properties":{"kind":{"type":"string","description":"Discriminator for this shape — always `percent` here.","enum":["percent"],"isRequired":true,"uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.4.feeIncrease.oneOf.0.kind","typeLabel":"enum\u003cstring>"},"unit":{"type":"string","description":"Unit qualifier for the value when the source text carried one (e.g. months, per square foot).","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.4.feeIncrease.oneOf.0.unit","typeLabel":"string"},"capturedData":{"type":"string","description":"The value as captured during extraction, as text.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.4.feeIncrease.oneOf.0.capturedData","typeLabel":"string"},"ocrText":{"type":"string","description":"Raw source text the value was extracted from.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.4.feeIncrease.oneOf.0.ocrText","typeLabel":"string"},"value":{"type":"number","description":"The typed value. Its JSON type follows `kind`: a number for `number` and `percent`, a `yyyy-MM-dd` string for `date`, a decimal string for `money`, and the captured text for `text`. Omitted when `capturedData` could not be parsed into that type.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.4.feeIncrease.oneOf.0.value","typeLabel":"number"}},"uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.4.feeIncrease.oneOf.0","typeLabel":"percent · object"},{"type":"object","title":"money","description":"Scheduled increase to the fee, when stated. A percentage arrives as `percent`, carried as the percentage itself; a stated dollar increase arrives as `money` with the lease's currency. This is a summary of the escalation: a fee that steps on explicit dates, or steps to new absolute amounts, is only partly expressed here. Read the tag's `schedule` for the authoritative per-period amounts.","required":["kind"],"properties":{"kind":{"type":"string","description":"Discriminator for this shape — always `money` here.","enum":["money"],"isRequired":true,"uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.4.feeIncrease.oneOf.1.kind","typeLabel":"enum\u003cstring>"},"unit":{"type":"string","description":"Unit qualifier for the value when the source text carried one (e.g. months, per square foot).","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.4.feeIncrease.oneOf.1.unit","typeLabel":"string"},"capturedData":{"type":"string","description":"The value as captured during extraction, as text.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.4.feeIncrease.oneOf.1.capturedData","typeLabel":"string"},"ocrText":{"type":"string","description":"Raw source text the value was extracted from.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.4.feeIncrease.oneOf.1.ocrText","typeLabel":"string"},"value":{"type":"string","description":"Present when `kind` is `money`. Decimal string (not a JSON number) holding a BigDecimal rounded to 2 decimals — preserves cent precision through JSON, e.g. \"120000.00\".","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.4.feeIncrease.oneOf.1.value","typeLabel":"string"},"currency":{"type":"string","description":"Currency code for the value (e.g. USD).","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.4.feeIncrease.oneOf.1.currency","typeLabel":"string"}},"uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.4.feeIncrease.oneOf.1","typeLabel":"money · object"},{"type":"object","title":"text","description":"Scheduled increase to the fee, when stated. A percentage arrives as `percent`, carried as the percentage itself; a stated dollar increase arrives as `money` with the lease's currency. This is a summary of the escalation: a fee that steps on explicit dates, or steps to new absolute amounts, is only partly expressed here. Read the tag's `schedule` for the authoritative per-period amounts.","required":["kind"],"properties":{"kind":{"type":"string","description":"Discriminator for this shape — always `text` here.","enum":["text"],"isRequired":true,"uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.4.feeIncrease.oneOf.2.kind","typeLabel":"enum\u003cstring>"},"unit":{"type":"string","description":"Unit qualifier for the value when the source text carried one (e.g. months, per square foot).","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.4.feeIncrease.oneOf.2.unit","typeLabel":"string"},"capturedData":{"type":"string","description":"The value as captured during extraction, as text.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.4.feeIncrease.oneOf.2.capturedData","typeLabel":"string"},"ocrText":{"type":"string","description":"Raw source text the value was extracted from.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.4.feeIncrease.oneOf.2.ocrText","typeLabel":"string"},"value":{"type":"string","description":"The typed value. Its JSON type follows `kind`: a number for `number` and `percent`, a `yyyy-MM-dd` string for `date`, a decimal string for `money`, and the captured text for `text`. Omitted when `capturedData` could not be parsed into that type.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.4.feeIncrease.oneOf.2.value","typeLabel":"string"}},"uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.4.feeIncrease.oneOf.2","typeLabel":"text · object"}],"uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.4.feeIncrease","typeLabel":"percent · object | money · object | text · object"},"encumberedSpaces":{"type":"array","description":"Spaces the provision burdens; same shape and suite-name matching semantics as `applicableSpaces`.","items":{"type":"object","description":"Reference to space in a Building: one Building Space suiteNumber, an entire floor, the entire Building, or all spaces. `scope` says which of those it is, and `name` carries the label — for `BUILDING` and `ALL` that label is the sentinel `Entire building` or `All spaces` rather than the name of a real Building Space. The `ALL` scope means all suites in the relevant context are referenced: a Tag with `scope: ALL` refers to every suite defined in the suiteNumber tag belonging to that Document or Lease.","properties":{"name":{"type":"string","description":"The space's display name: a suite name that matches `BuildingSpace.suiteNumber` by string (scope SUITE), a floor designation (scope FLOOR), or the sentinels `Entire building` / `All spaces`.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.4.encumberedSpaces.items.[INDEX].name","typeLabel":"string"},"buildingId":{"type":"string","description":"Building this entry refers to. Can differ from the parent lease's own Building when a lease spans multiple buildings or has relocated.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.4.encumberedSpaces.items.[INDEX].buildingId","typeLabel":"string"},"scope":{"type":"string","description":"Granularity of the reference: SUITE (one suite), FLOOR (a whole floor), BUILDING (the entire building), or ALL (all spaces).","enum":["BUILDING","FLOOR","SUITE","ALL"],"uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.4.encumberedSpaces.items.[INDEX].scope","typeLabel":"enum\u003cstring>"}},"uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.4.encumberedSpaces.items.[INDEX]","typeLabel":"object"},"uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.4.encumberedSpaces","typeLabel":"object[]"}},"uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.4","typeLabel":"FEE · object"},{"type":"object","title":"OTHER","description":"Structured detail for COMPLEX tags (options and rights). Branch on its `kind`. Null for STANDARD tags.","required":["kind"],"properties":{"kind":{"type":"string","description":"Discriminator for this shape — always `OTHER` here.","enum":["OTHER"],"isRequired":true,"uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.5.kind","typeLabel":"enum\u003cstring>"},"rightStatus":{"type":"string","description":"Status of the option/right itself. Independent of the tag record's `lifecycleStatus` — the two are resolved independently and can disagree.","enum":["AVAILABLE","EXERCISED","STRICKEN","DECLINED","EXPIRED","UNKNOWN"],"uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.5.rightStatus","typeLabel":"enum\u003cstring>"},"rightIsStricken":{"type":"string","description":"Indicator the right was stricken from the lease via a Stricken clause; see `rightStatus` for the resolved state.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.5.rightIsStricken","typeLabel":"string"},"customLabel":{"type":"string","description":"Label denoting the option family this option belongs to. Options with the same `referenceId` should also shared the same `customLabel`","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.5.customLabel","typeLabel":"string"},"effectiveDateOfRight":{"oneOf":[{"type":"object","title":"number","description":"When the current version of the right takes effect. Defaults to the parent tag's own effective date, which arrives as `date` with no `unit` because nothing was captured for it; an `\u003coption>.effectiveDateOfRight` cor tag overrides that. Shape follows the unit it was captured with: a stated deadline arrives as `date`, a period the lease measures rather than dates arrives as `number` — read `unit` for what it counts — and a window as `dateRange`.","required":["kind"],"properties":{"kind":{"type":"string","description":"Discriminator for this shape — always `number` here.","enum":["number"],"isRequired":true,"uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.5.effectiveDateOfRight.oneOf.0.kind","typeLabel":"enum\u003cstring>"},"unit":{"type":"string","description":"Unit qualifier for the value when the source text carried one (e.g. months, per square foot).","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.5.effectiveDateOfRight.oneOf.0.unit","typeLabel":"string"},"capturedData":{"type":"string","description":"The value as captured during extraction, as text.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.5.effectiveDateOfRight.oneOf.0.capturedData","typeLabel":"string"},"ocrText":{"type":"string","description":"Raw source text the value was extracted from.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.5.effectiveDateOfRight.oneOf.0.ocrText","typeLabel":"string"},"value":{"type":"number","description":"The typed value. Its JSON type follows `kind`: a number for `number` and `percent`, a `yyyy-MM-dd` string for `date`, a decimal string for `money`, and the captured text for `text`. Omitted when `capturedData` could not be parsed into that type.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.5.effectiveDateOfRight.oneOf.0.value","typeLabel":"number"}},"uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.5.effectiveDateOfRight.oneOf.0","typeLabel":"number · object"},{"type":"object","title":"date","description":"When the current version of the right takes effect. Defaults to the parent tag's own effective date, which arrives as `date` with no `unit` because nothing was captured for it; an `\u003coption>.effectiveDateOfRight` cor tag overrides that. Shape follows the unit it was captured with: a stated deadline arrives as `date`, a period the lease measures rather than dates arrives as `number` — read `unit` for what it counts — and a window as `dateRange`.","required":["kind"],"properties":{"kind":{"type":"string","description":"Discriminator for this shape — always `date` here.","enum":["date"],"isRequired":true,"uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.5.effectiveDateOfRight.oneOf.1.kind","typeLabel":"enum\u003cstring>"},"unit":{"type":"string","description":"Unit qualifier for the value when the source text carried one (e.g. months, per square foot).","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.5.effectiveDateOfRight.oneOf.1.unit","typeLabel":"string"},"capturedData":{"type":"string","description":"The value as captured during extraction, as text.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.5.effectiveDateOfRight.oneOf.1.capturedData","typeLabel":"string"},"ocrText":{"type":"string","description":"Raw source text the value was extracted from.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.5.effectiveDateOfRight.oneOf.1.ocrText","typeLabel":"string"},"value":{"type":"string","description":"Present when `kind` is `date`. The captured date, `yyyy-MM-dd`. Omitted when the captured text was not parseable as a date; `capturedData` still holds what was captured.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.5.effectiveDateOfRight.oneOf.1.value","typeLabel":"string"}},"uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.5.effectiveDateOfRight.oneOf.1","typeLabel":"date · object"},{"type":"object","title":"dateRange","description":"When the current version of the right takes effect. Defaults to the parent tag's own effective date, which arrives as `date` with no `unit` because nothing was captured for it; an `\u003coption>.effectiveDateOfRight` cor tag overrides that. Shape follows the unit it was captured with: a stated deadline arrives as `date`, a period the lease measures rather than dates arrives as `number` — read `unit` for what it counts — and a window as `dateRange`.","required":["kind"],"properties":{"kind":{"type":"string","description":"Discriminator for this shape — always `dateRange` here.","enum":["dateRange"],"isRequired":true,"uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.5.effectiveDateOfRight.oneOf.2.kind","typeLabel":"enum\u003cstring>"},"unit":{"type":"string","description":"Unit qualifier for the value when the source text carried one (e.g. months, per square foot).","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.5.effectiveDateOfRight.oneOf.2.unit","typeLabel":"string"},"capturedData":{"type":"string","description":"The value as captured during extraction, as text.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.5.effectiveDateOfRight.oneOf.2.capturedData","typeLabel":"string"},"ocrText":{"type":"string","description":"Raw source text the value was extracted from.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.5.effectiveDateOfRight.oneOf.2.ocrText","typeLabel":"string"},"start":{"type":"string","description":"Present when `kind` is `dateRange`. Inclusive start of the range, `yyyy-MM-dd`. Omitted together with `end` when `capturedData` could not be split into a parseable pair.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.5.effectiveDateOfRight.oneOf.2.start","typeLabel":"string"},"end":{"type":"string","description":"Present when `kind` is `dateRange`. Inclusive end of the range, `yyyy-MM-dd`. Omitted together with `start` when `capturedData` could not be split into a parseable pair.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.5.effectiveDateOfRight.oneOf.2.end","typeLabel":"string"}},"uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.5.effectiveDateOfRight.oneOf.2","typeLabel":"dateRange · object"},{"type":"object","title":"text","description":"When the current version of the right takes effect. Defaults to the parent tag's own effective date, which arrives as `date` with no `unit` because nothing was captured for it; an `\u003coption>.effectiveDateOfRight` cor tag overrides that. Shape follows the unit it was captured with: a stated deadline arrives as `date`, a period the lease measures rather than dates arrives as `number` — read `unit` for what it counts — and a window as `dateRange`.","required":["kind"],"properties":{"kind":{"type":"string","description":"Discriminator for this shape — always `text` here.","enum":["text"],"isRequired":true,"uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.5.effectiveDateOfRight.oneOf.3.kind","typeLabel":"enum\u003cstring>"},"unit":{"type":"string","description":"Unit qualifier for the value when the source text carried one (e.g. months, per square foot).","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.5.effectiveDateOfRight.oneOf.3.unit","typeLabel":"string"},"capturedData":{"type":"string","description":"The value as captured during extraction, as text.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.5.effectiveDateOfRight.oneOf.3.capturedData","typeLabel":"string"},"ocrText":{"type":"string","description":"Raw source text the value was extracted from.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.5.effectiveDateOfRight.oneOf.3.ocrText","typeLabel":"string"},"value":{"type":"string","description":"The typed value. Its JSON type follows `kind`: a number for `number` and `percent`, a `yyyy-MM-dd` string for `date`, a decimal string for `money`, and the captured text for `text`. Omitted when `capturedData` could not be parsed into that type.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.5.effectiveDateOfRight.oneOf.3.value","typeLabel":"string"}},"uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.5.effectiveDateOfRight.oneOf.3","typeLabel":"text · object"}],"uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.5.effectiveDateOfRight","typeLabel":"number · object | date · object | dateRange · object | text · object"},"clause":{"type":"string","description":"Some Tags capture a simple clause rather than more in-depth data, represented here when that is the case.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.5.clause","typeLabel":"string"},"amendingTag":{"type":"object","description":"The same reference the Tag carries in its own `amendingTag` — both are built from this option's `referenceId`, so reading either gives the option this one amends. Repeated here so a caller working inside `tagComponents` does not have to climb back out to the Tag.","properties":{"effectiveDate":{"type":"string","description":"Effective date of the referenced Tag — the amended option, or the parent option when this sits on a component. Not the effective date of the Tag carrying this reference.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.5.amendingTag.effectiveDate","typeLabel":"string"},"amendedTagId":{"type":"string","description":"Id the Tag's `referenceId` points at: the earlier option this one amends, or the parent option container when this sits on a component Tag.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.5.amendingTag.amendedTagId","typeLabel":"string"}},"uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.5.amendingTag","typeLabel":"object"},"componentTags":{"type":"object","additionalProperties":{"type":"object","description":"A pointer to another Tag. These are the values of a component's `componentTags` map, one per constituent tag the option or right was assembled from, keyed by the part of that tag's `tagName` after the dot. The component surfaces those tags' values on its own fields; fetch a Tag by id with the [get tag endpoint](/api-reference/v2/tags/get-tag) when you need its citations, status, or raw captured text.","properties":{"id":{"type":"string","description":"Tag Id (UUID) of the referenced tag.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.5.componentTags.additionalProperties.id","typeLabel":"string"},"displayName":{"type":"string","description":"Display name of the referenced tag.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.5.componentTags.additionalProperties.displayName","typeLabel":"string"}},"uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.5.componentTags.additionalProperties","typeLabel":"object"},"description":"References to the constituent tags this component was assembled from, keyed by component field.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.5.componentTags","typeLabel":"object"},"encumberedSpaces":{"type":"array","description":"Spaces the provision burdens; same shape and suite-name matching semantics as `applicableSpaces`.","items":{"type":"object","description":"Reference to space in a Building: one Building Space suiteNumber, an entire floor, the entire Building, or all spaces. `scope` says which of those it is, and `name` carries the label — for `BUILDING` and `ALL` that label is the sentinel `Entire building` or `All spaces` rather than the name of a real Building Space. The `ALL` scope means all suites in the relevant context are referenced: a Tag with `scope: ALL` refers to every suite defined in the suiteNumber tag belonging to that Document or Lease.","properties":{"name":{"type":"string","description":"The space's display name: a suite name that matches `BuildingSpace.suiteNumber` by string (scope SUITE), a floor designation (scope FLOOR), or the sentinels `Entire building` / `All spaces`.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.5.encumberedSpaces.items.[INDEX].name","typeLabel":"string"},"buildingId":{"type":"string","description":"Building this entry refers to. Can differ from the parent lease's own Building when a lease spans multiple buildings or has relocated.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.5.encumberedSpaces.items.[INDEX].buildingId","typeLabel":"string"},"scope":{"type":"string","description":"Granularity of the reference: SUITE (one suite), FLOOR (a whole floor), BUILDING (the entire building), or ALL (all spaces).","enum":["BUILDING","FLOOR","SUITE","ALL"],"uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.5.encumberedSpaces.items.[INDEX].scope","typeLabel":"enum\u003cstring>"}},"uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.5.encumberedSpaces.items.[INDEX]","typeLabel":"object"},"uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.5.encumberedSpaces","typeLabel":"object[]"}},"uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.5","typeLabel":"OTHER · object"},{"type":"object","title":"PURCHASE","description":"Structured detail for COMPLEX tags (options and rights). Branch on its `kind`. Null for STANDARD tags.","required":["kind"],"properties":{"kind":{"type":"string","description":"Discriminator for this shape — always `PURCHASE` here.","enum":["PURCHASE"],"isRequired":true,"uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.6.kind","typeLabel":"enum\u003cstring>"},"rightStatus":{"type":"string","description":"Status of the option/right itself. Independent of the tag record's `lifecycleStatus` — the two are resolved independently and can disagree.","enum":["AVAILABLE","EXERCISED","STRICKEN","DECLINED","EXPIRED","UNKNOWN"],"uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.6.rightStatus","typeLabel":"enum\u003cstring>"},"rightIsStricken":{"type":"string","description":"Indicator the right was stricken from the lease via a Stricken clause; see `rightStatus` for the resolved state.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.6.rightIsStricken","typeLabel":"string"},"customLabel":{"type":"string","description":"Label denoting the option family this option belongs to. Options with the same `referenceId` should also shared the same `customLabel`","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.6.customLabel","typeLabel":"string"},"effectiveDateOfRight":{"oneOf":[{"type":"object","title":"number","description":"When the current version of the right takes effect. Defaults to the parent tag's own effective date, which arrives as `date` with no `unit` because nothing was captured for it; an `\u003coption>.effectiveDateOfRight` cor tag overrides that. Shape follows the unit it was captured with: a stated deadline arrives as `date`, a period the lease measures rather than dates arrives as `number` — read `unit` for what it counts — and a window as `dateRange`.","required":["kind"],"properties":{"kind":{"type":"string","description":"Discriminator for this shape — always `number` here.","enum":["number"],"isRequired":true,"uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.6.effectiveDateOfRight.oneOf.0.kind","typeLabel":"enum\u003cstring>"},"unit":{"type":"string","description":"Unit qualifier for the value when the source text carried one (e.g. months, per square foot).","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.6.effectiveDateOfRight.oneOf.0.unit","typeLabel":"string"},"capturedData":{"type":"string","description":"The value as captured during extraction, as text.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.6.effectiveDateOfRight.oneOf.0.capturedData","typeLabel":"string"},"ocrText":{"type":"string","description":"Raw source text the value was extracted from.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.6.effectiveDateOfRight.oneOf.0.ocrText","typeLabel":"string"},"value":{"type":"number","description":"The typed value. Its JSON type follows `kind`: a number for `number` and `percent`, a `yyyy-MM-dd` string for `date`, a decimal string for `money`, and the captured text for `text`. Omitted when `capturedData` could not be parsed into that type.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.6.effectiveDateOfRight.oneOf.0.value","typeLabel":"number"}},"uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.6.effectiveDateOfRight.oneOf.0","typeLabel":"number · object"},{"type":"object","title":"date","description":"When the current version of the right takes effect. Defaults to the parent tag's own effective date, which arrives as `date` with no `unit` because nothing was captured for it; an `\u003coption>.effectiveDateOfRight` cor tag overrides that. Shape follows the unit it was captured with: a stated deadline arrives as `date`, a period the lease measures rather than dates arrives as `number` — read `unit` for what it counts — and a window as `dateRange`.","required":["kind"],"properties":{"kind":{"type":"string","description":"Discriminator for this shape — always `date` here.","enum":["date"],"isRequired":true,"uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.6.effectiveDateOfRight.oneOf.1.kind","typeLabel":"enum\u003cstring>"},"unit":{"type":"string","description":"Unit qualifier for the value when the source text carried one (e.g. months, per square foot).","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.6.effectiveDateOfRight.oneOf.1.unit","typeLabel":"string"},"capturedData":{"type":"string","description":"The value as captured during extraction, as text.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.6.effectiveDateOfRight.oneOf.1.capturedData","typeLabel":"string"},"ocrText":{"type":"string","description":"Raw source text the value was extracted from.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.6.effectiveDateOfRight.oneOf.1.ocrText","typeLabel":"string"},"value":{"type":"string","description":"Present when `kind` is `date`. The captured date, `yyyy-MM-dd`. Omitted when the captured text was not parseable as a date; `capturedData` still holds what was captured.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.6.effectiveDateOfRight.oneOf.1.value","typeLabel":"string"}},"uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.6.effectiveDateOfRight.oneOf.1","typeLabel":"date · object"},{"type":"object","title":"dateRange","description":"When the current version of the right takes effect. Defaults to the parent tag's own effective date, which arrives as `date` with no `unit` because nothing was captured for it; an `\u003coption>.effectiveDateOfRight` cor tag overrides that. Shape follows the unit it was captured with: a stated deadline arrives as `date`, a period the lease measures rather than dates arrives as `number` — read `unit` for what it counts — and a window as `dateRange`.","required":["kind"],"properties":{"kind":{"type":"string","description":"Discriminator for this shape — always `dateRange` here.","enum":["dateRange"],"isRequired":true,"uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.6.effectiveDateOfRight.oneOf.2.kind","typeLabel":"enum\u003cstring>"},"unit":{"type":"string","description":"Unit qualifier for the value when the source text carried one (e.g. months, per square foot).","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.6.effectiveDateOfRight.oneOf.2.unit","typeLabel":"string"},"capturedData":{"type":"string","description":"The value as captured during extraction, as text.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.6.effectiveDateOfRight.oneOf.2.capturedData","typeLabel":"string"},"ocrText":{"type":"string","description":"Raw source text the value was extracted from.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.6.effectiveDateOfRight.oneOf.2.ocrText","typeLabel":"string"},"start":{"type":"string","description":"Present when `kind` is `dateRange`. Inclusive start of the range, `yyyy-MM-dd`. Omitted together with `end` when `capturedData` could not be split into a parseable pair.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.6.effectiveDateOfRight.oneOf.2.start","typeLabel":"string"},"end":{"type":"string","description":"Present when `kind` is `dateRange`. Inclusive end of the range, `yyyy-MM-dd`. Omitted together with `start` when `capturedData` could not be split into a parseable pair.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.6.effectiveDateOfRight.oneOf.2.end","typeLabel":"string"}},"uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.6.effectiveDateOfRight.oneOf.2","typeLabel":"dateRange · object"},{"type":"object","title":"text","description":"When the current version of the right takes effect. Defaults to the parent tag's own effective date, which arrives as `date` with no `unit` because nothing was captured for it; an `\u003coption>.effectiveDateOfRight` cor tag overrides that. Shape follows the unit it was captured with: a stated deadline arrives as `date`, a period the lease measures rather than dates arrives as `number` — read `unit` for what it counts — and a window as `dateRange`.","required":["kind"],"properties":{"kind":{"type":"string","description":"Discriminator for this shape — always `text` here.","enum":["text"],"isRequired":true,"uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.6.effectiveDateOfRight.oneOf.3.kind","typeLabel":"enum\u003cstring>"},"unit":{"type":"string","description":"Unit qualifier for the value when the source text carried one (e.g. months, per square foot).","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.6.effectiveDateOfRight.oneOf.3.unit","typeLabel":"string"},"capturedData":{"type":"string","description":"The value as captured during extraction, as text.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.6.effectiveDateOfRight.oneOf.3.capturedData","typeLabel":"string"},"ocrText":{"type":"string","description":"Raw source text the value was extracted from.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.6.effectiveDateOfRight.oneOf.3.ocrText","typeLabel":"string"},"value":{"type":"string","description":"The typed value. Its JSON type follows `kind`: a number for `number` and `percent`, a `yyyy-MM-dd` string for `date`, a decimal string for `money`, and the captured text for `text`. Omitted when `capturedData` could not be parsed into that type.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.6.effectiveDateOfRight.oneOf.3.value","typeLabel":"string"}},"uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.6.effectiveDateOfRight.oneOf.3","typeLabel":"text · object"}],"uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.6.effectiveDateOfRight","typeLabel":"number · object | date · object | dateRange · object | text · object"},"clause":{"type":"string","description":"Some Tags capture a simple clause rather than more in-depth data, represented here when that is the case.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.6.clause","typeLabel":"string"},"amendingTag":{"type":"object","description":"The same reference the Tag carries in its own `amendingTag` — both are built from this option's `referenceId`, so reading either gives the option this one amends. Repeated here so a caller working inside `tagComponents` does not have to climb back out to the Tag.","properties":{"effectiveDate":{"type":"string","description":"Effective date of the referenced Tag — the amended option, or the parent option when this sits on a component. Not the effective date of the Tag carrying this reference.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.6.amendingTag.effectiveDate","typeLabel":"string"},"amendedTagId":{"type":"string","description":"Id the Tag's `referenceId` points at: the earlier option this one amends, or the parent option container when this sits on a component Tag.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.6.amendingTag.amendedTagId","typeLabel":"string"}},"uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.6.amendingTag","typeLabel":"object"},"componentTags":{"type":"object","additionalProperties":{"type":"object","description":"A pointer to another Tag. These are the values of a component's `componentTags` map, one per constituent tag the option or right was assembled from, keyed by the part of that tag's `tagName` after the dot. The component surfaces those tags' values on its own fields; fetch a Tag by id with the [get tag endpoint](/api-reference/v2/tags/get-tag) when you need its citations, status, or raw captured text.","properties":{"id":{"type":"string","description":"Tag Id (UUID) of the referenced tag.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.6.componentTags.additionalProperties.id","typeLabel":"string"},"displayName":{"type":"string","description":"Display name of the referenced tag.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.6.componentTags.additionalProperties.displayName","typeLabel":"string"}},"uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.6.componentTags.additionalProperties","typeLabel":"object"},"description":"References to the constituent tags this component was assembled from, keyed by component field.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.6.componentTags","typeLabel":"object"},"advancedNoticePeriod":{"oneOf":[{"type":"object","title":"number","description":"Notice period attached to the purchase right. Shape follows the unit the term was captured with: `number` for a plain count, `date` for a stated deadline, and `numberRange` or `dateRange` when the lease states a window rather than a single figure.","required":["kind"],"properties":{"kind":{"type":"string","description":"Discriminator for this shape — always `number` here.","enum":["number"],"isRequired":true,"uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.6.advancedNoticePeriod.oneOf.0.kind","typeLabel":"enum\u003cstring>"},"unit":{"type":"string","description":"Unit qualifier for the value when the source text carried one (e.g. months, per square foot).","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.6.advancedNoticePeriod.oneOf.0.unit","typeLabel":"string"},"capturedData":{"type":"string","description":"The value as captured during extraction, as text.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.6.advancedNoticePeriod.oneOf.0.capturedData","typeLabel":"string"},"ocrText":{"type":"string","description":"Raw source text the value was extracted from.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.6.advancedNoticePeriod.oneOf.0.ocrText","typeLabel":"string"},"value":{"type":"number","description":"The typed value. Its JSON type follows `kind`: a number for `number` and `percent`, a `yyyy-MM-dd` string for `date`, a decimal string for `money`, and the captured text for `text`. Omitted when `capturedData` could not be parsed into that type.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.6.advancedNoticePeriod.oneOf.0.value","typeLabel":"number"}},"uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.6.advancedNoticePeriod.oneOf.0","typeLabel":"number · object"},{"type":"object","title":"date","description":"Notice period attached to the purchase right. Shape follows the unit the term was captured with: `number` for a plain count, `date` for a stated deadline, and `numberRange` or `dateRange` when the lease states a window rather than a single figure.","required":["kind"],"properties":{"kind":{"type":"string","description":"Discriminator for this shape — always `date` here.","enum":["date"],"isRequired":true,"uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.6.advancedNoticePeriod.oneOf.1.kind","typeLabel":"enum\u003cstring>"},"unit":{"type":"string","description":"Unit qualifier for the value when the source text carried one (e.g. months, per square foot).","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.6.advancedNoticePeriod.oneOf.1.unit","typeLabel":"string"},"capturedData":{"type":"string","description":"The value as captured during extraction, as text.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.6.advancedNoticePeriod.oneOf.1.capturedData","typeLabel":"string"},"ocrText":{"type":"string","description":"Raw source text the value was extracted from.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.6.advancedNoticePeriod.oneOf.1.ocrText","typeLabel":"string"},"value":{"type":"string","description":"Present when `kind` is `date`. The captured date, `yyyy-MM-dd`. Omitted when the captured text was not parseable as a date; `capturedData` still holds what was captured.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.6.advancedNoticePeriod.oneOf.1.value","typeLabel":"string"}},"uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.6.advancedNoticePeriod.oneOf.1","typeLabel":"date · object"},{"type":"object","title":"numberRange","description":"Notice period attached to the purchase right. Shape follows the unit the term was captured with: `number` for a plain count, `date` for a stated deadline, and `numberRange` or `dateRange` when the lease states a window rather than a single figure.","required":["kind"],"properties":{"kind":{"type":"string","description":"Discriminator for this shape — always `numberRange` here.","enum":["numberRange"],"isRequired":true,"uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.6.advancedNoticePeriod.oneOf.2.kind","typeLabel":"enum\u003cstring>"},"unit":{"type":"string","description":"Unit qualifier for the value when the source text carried one (e.g. months, per square foot).","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.6.advancedNoticePeriod.oneOf.2.unit","typeLabel":"string"},"capturedData":{"type":"string","description":"The value as captured during extraction, as text.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.6.advancedNoticePeriod.oneOf.2.capturedData","typeLabel":"string"},"ocrText":{"type":"string","description":"Raw source text the value was extracted from.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.6.advancedNoticePeriod.oneOf.2.ocrText","typeLabel":"string"},"start":{"type":"integer","format":"int32","description":"Inclusive start of the range: a `yyyy-MM-dd` string for `dateRange`, an integer for `numberRange`. Omitted together with `end` when `capturedData` could not be split into a parseable pair.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.6.advancedNoticePeriod.oneOf.2.start","typeLabel":"integer\u003cint32>"},"end":{"type":"integer","format":"int32","description":"Inclusive end of the range: a `yyyy-MM-dd` string for `dateRange`, an integer for `numberRange`. Omitted together with `start` when `capturedData` could not be split into a parseable pair.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.6.advancedNoticePeriod.oneOf.2.end","typeLabel":"integer\u003cint32>"}},"uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.6.advancedNoticePeriod.oneOf.2","typeLabel":"numberRange · object"},{"type":"object","title":"dateRange","description":"Notice period attached to the purchase right. Shape follows the unit the term was captured with: `number` for a plain count, `date` for a stated deadline, and `numberRange` or `dateRange` when the lease states a window rather than a single figure.","required":["kind"],"properties":{"kind":{"type":"string","description":"Discriminator for this shape — always `dateRange` here.","enum":["dateRange"],"isRequired":true,"uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.6.advancedNoticePeriod.oneOf.3.kind","typeLabel":"enum\u003cstring>"},"unit":{"type":"string","description":"Unit qualifier for the value when the source text carried one (e.g. months, per square foot).","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.6.advancedNoticePeriod.oneOf.3.unit","typeLabel":"string"},"capturedData":{"type":"string","description":"The value as captured during extraction, as text.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.6.advancedNoticePeriod.oneOf.3.capturedData","typeLabel":"string"},"ocrText":{"type":"string","description":"Raw source text the value was extracted from.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.6.advancedNoticePeriod.oneOf.3.ocrText","typeLabel":"string"},"start":{"type":"string","description":"Present when `kind` is `dateRange`. Inclusive start of the range, `yyyy-MM-dd`. Omitted together with `end` when `capturedData` could not be split into a parseable pair.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.6.advancedNoticePeriod.oneOf.3.start","typeLabel":"string"},"end":{"type":"string","description":"Present when `kind` is `dateRange`. Inclusive end of the range, `yyyy-MM-dd`. Omitted together with `start` when `capturedData` could not be split into a parseable pair.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.6.advancedNoticePeriod.oneOf.3.end","typeLabel":"string"}},"uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.6.advancedNoticePeriod.oneOf.3","typeLabel":"dateRange · object"},{"type":"object","title":"text","description":"Notice period attached to the purchase right. Shape follows the unit the term was captured with: `number` for a plain count, `date` for a stated deadline, and `numberRange` or `dateRange` when the lease states a window rather than a single figure.","required":["kind"],"properties":{"kind":{"type":"string","description":"Discriminator for this shape — always `text` here.","enum":["text"],"isRequired":true,"uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.6.advancedNoticePeriod.oneOf.4.kind","typeLabel":"enum\u003cstring>"},"unit":{"type":"string","description":"Unit qualifier for the value when the source text carried one (e.g. months, per square foot).","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.6.advancedNoticePeriod.oneOf.4.unit","typeLabel":"string"},"capturedData":{"type":"string","description":"The value as captured during extraction, as text.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.6.advancedNoticePeriod.oneOf.4.capturedData","typeLabel":"string"},"ocrText":{"type":"string","description":"Raw source text the value was extracted from.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.6.advancedNoticePeriod.oneOf.4.ocrText","typeLabel":"string"},"value":{"type":"string","description":"The typed value. Its JSON type follows `kind`: a number for `number` and `percent`, a `yyyy-MM-dd` string for `date`, a decimal string for `money`, and the captured text for `text`. Omitted when `capturedData` could not be parsed into that type.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.6.advancedNoticePeriod.oneOf.4.value","typeLabel":"string"}},"uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.6.advancedNoticePeriod.oneOf.4","typeLabel":"text · object"}],"uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.6.advancedNoticePeriod","typeLabel":"number · object | date · object | numberRange · object | dateRange · object | text · object"},"effectivePeriod":{"type":"object","title":"dateRange","description":"Date range during which the purchase option may be exercised.","required":["kind"],"properties":{"kind":{"type":"string","description":"Discriminator for this shape — always `dateRange` here.","enum":["dateRange"],"isRequired":true,"uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.6.effectivePeriod.kind","typeLabel":"enum\u003cstring>"},"unit":{"type":"string","description":"Unit qualifier for the value when the source text carried one (e.g. months, per square foot).","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.6.effectivePeriod.unit","typeLabel":"string"},"capturedData":{"type":"string","description":"The value as captured during extraction, as text.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.6.effectivePeriod.capturedData","typeLabel":"string"},"ocrText":{"type":"string","description":"Raw source text the value was extracted from.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.6.effectivePeriod.ocrText","typeLabel":"string"},"start":{"type":"string","description":"Present when `kind` is `dateRange`. Inclusive start of the range, `yyyy-MM-dd`. Omitted together with `end` when `capturedData` could not be split into a parseable pair.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.6.effectivePeriod.start","typeLabel":"string"},"end":{"type":"string","description":"Present when `kind` is `dateRange`. Inclusive end of the range, `yyyy-MM-dd`. Omitted together with `start` when `capturedData` could not be split into a parseable pair.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.6.effectivePeriod.end","typeLabel":"string"}},"uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.6.effectivePeriod","typeLabel":"dateRange · object"}},"uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.6","typeLabel":"PURCHASE · object"},{"type":"object","title":"RENEWAL","description":"Structured detail for COMPLEX tags (options and rights). Branch on its `kind`. Null for STANDARD tags.","required":["kind"],"properties":{"kind":{"type":"string","description":"Discriminator for this shape — always `RENEWAL` here.","enum":["RENEWAL"],"isRequired":true,"uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.7.kind","typeLabel":"enum\u003cstring>"},"rightStatus":{"type":"string","description":"Status of the option/right itself. Independent of the tag record's `lifecycleStatus` — the two are resolved independently and can disagree.","enum":["AVAILABLE","EXERCISED","STRICKEN","DECLINED","EXPIRED","UNKNOWN"],"uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.7.rightStatus","typeLabel":"enum\u003cstring>"},"rightIsStricken":{"type":"string","description":"Indicator the right was stricken from the lease via a Stricken clause; see `rightStatus` for the resolved state.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.7.rightIsStricken","typeLabel":"string"},"customLabel":{"type":"string","description":"Label denoting the option family this option belongs to. Options with the same `referenceId` should also shared the same `customLabel`","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.7.customLabel","typeLabel":"string"},"effectiveDateOfRight":{"oneOf":[{"type":"object","title":"number","description":"When the current version of the right takes effect. Defaults to the parent tag's own effective date, which arrives as `date` with no `unit` because nothing was captured for it; an `\u003coption>.effectiveDateOfRight` cor tag overrides that. Shape follows the unit it was captured with: a stated deadline arrives as `date`, a period the lease measures rather than dates arrives as `number` — read `unit` for what it counts — and a window as `dateRange`.","required":["kind"],"properties":{"kind":{"type":"string","description":"Discriminator for this shape — always `number` here.","enum":["number"],"isRequired":true,"uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.7.effectiveDateOfRight.oneOf.0.kind","typeLabel":"enum\u003cstring>"},"unit":{"type":"string","description":"Unit qualifier for the value when the source text carried one (e.g. months, per square foot).","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.7.effectiveDateOfRight.oneOf.0.unit","typeLabel":"string"},"capturedData":{"type":"string","description":"The value as captured during extraction, as text.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.7.effectiveDateOfRight.oneOf.0.capturedData","typeLabel":"string"},"ocrText":{"type":"string","description":"Raw source text the value was extracted from.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.7.effectiveDateOfRight.oneOf.0.ocrText","typeLabel":"string"},"value":{"type":"number","description":"The typed value. Its JSON type follows `kind`: a number for `number` and `percent`, a `yyyy-MM-dd` string for `date`, a decimal string for `money`, and the captured text for `text`. Omitted when `capturedData` could not be parsed into that type.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.7.effectiveDateOfRight.oneOf.0.value","typeLabel":"number"}},"uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.7.effectiveDateOfRight.oneOf.0","typeLabel":"number · object"},{"type":"object","title":"date","description":"When the current version of the right takes effect. Defaults to the parent tag's own effective date, which arrives as `date` with no `unit` because nothing was captured for it; an `\u003coption>.effectiveDateOfRight` cor tag overrides that. Shape follows the unit it was captured with: a stated deadline arrives as `date`, a period the lease measures rather than dates arrives as `number` — read `unit` for what it counts — and a window as `dateRange`.","required":["kind"],"properties":{"kind":{"type":"string","description":"Discriminator for this shape — always `date` here.","enum":["date"],"isRequired":true,"uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.7.effectiveDateOfRight.oneOf.1.kind","typeLabel":"enum\u003cstring>"},"unit":{"type":"string","description":"Unit qualifier for the value when the source text carried one (e.g. months, per square foot).","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.7.effectiveDateOfRight.oneOf.1.unit","typeLabel":"string"},"capturedData":{"type":"string","description":"The value as captured during extraction, as text.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.7.effectiveDateOfRight.oneOf.1.capturedData","typeLabel":"string"},"ocrText":{"type":"string","description":"Raw source text the value was extracted from.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.7.effectiveDateOfRight.oneOf.1.ocrText","typeLabel":"string"},"value":{"type":"string","description":"Present when `kind` is `date`. The captured date, `yyyy-MM-dd`. Omitted when the captured text was not parseable as a date; `capturedData` still holds what was captured.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.7.effectiveDateOfRight.oneOf.1.value","typeLabel":"string"}},"uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.7.effectiveDateOfRight.oneOf.1","typeLabel":"date · object"},{"type":"object","title":"dateRange","description":"When the current version of the right takes effect. Defaults to the parent tag's own effective date, which arrives as `date` with no `unit` because nothing was captured for it; an `\u003coption>.effectiveDateOfRight` cor tag overrides that. Shape follows the unit it was captured with: a stated deadline arrives as `date`, a period the lease measures rather than dates arrives as `number` — read `unit` for what it counts — and a window as `dateRange`.","required":["kind"],"properties":{"kind":{"type":"string","description":"Discriminator for this shape — always `dateRange` here.","enum":["dateRange"],"isRequired":true,"uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.7.effectiveDateOfRight.oneOf.2.kind","typeLabel":"enum\u003cstring>"},"unit":{"type":"string","description":"Unit qualifier for the value when the source text carried one (e.g. months, per square foot).","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.7.effectiveDateOfRight.oneOf.2.unit","typeLabel":"string"},"capturedData":{"type":"string","description":"The value as captured during extraction, as text.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.7.effectiveDateOfRight.oneOf.2.capturedData","typeLabel":"string"},"ocrText":{"type":"string","description":"Raw source text the value was extracted from.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.7.effectiveDateOfRight.oneOf.2.ocrText","typeLabel":"string"},"start":{"type":"string","description":"Present when `kind` is `dateRange`. Inclusive start of the range, `yyyy-MM-dd`. Omitted together with `end` when `capturedData` could not be split into a parseable pair.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.7.effectiveDateOfRight.oneOf.2.start","typeLabel":"string"},"end":{"type":"string","description":"Present when `kind` is `dateRange`. Inclusive end of the range, `yyyy-MM-dd`. Omitted together with `start` when `capturedData` could not be split into a parseable pair.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.7.effectiveDateOfRight.oneOf.2.end","typeLabel":"string"}},"uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.7.effectiveDateOfRight.oneOf.2","typeLabel":"dateRange · object"},{"type":"object","title":"text","description":"When the current version of the right takes effect. Defaults to the parent tag's own effective date, which arrives as `date` with no `unit` because nothing was captured for it; an `\u003coption>.effectiveDateOfRight` cor tag overrides that. Shape follows the unit it was captured with: a stated deadline arrives as `date`, a period the lease measures rather than dates arrives as `number` — read `unit` for what it counts — and a window as `dateRange`.","required":["kind"],"properties":{"kind":{"type":"string","description":"Discriminator for this shape — always `text` here.","enum":["text"],"isRequired":true,"uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.7.effectiveDateOfRight.oneOf.3.kind","typeLabel":"enum\u003cstring>"},"unit":{"type":"string","description":"Unit qualifier for the value when the source text carried one (e.g. months, per square foot).","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.7.effectiveDateOfRight.oneOf.3.unit","typeLabel":"string"},"capturedData":{"type":"string","description":"The value as captured during extraction, as text.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.7.effectiveDateOfRight.oneOf.3.capturedData","typeLabel":"string"},"ocrText":{"type":"string","description":"Raw source text the value was extracted from.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.7.effectiveDateOfRight.oneOf.3.ocrText","typeLabel":"string"},"value":{"type":"string","description":"The typed value. Its JSON type follows `kind`: a number for `number` and `percent`, a `yyyy-MM-dd` string for `date`, a decimal string for `money`, and the captured text for `text`. Omitted when `capturedData` could not be parsed into that type.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.7.effectiveDateOfRight.oneOf.3.value","typeLabel":"string"}},"uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.7.effectiveDateOfRight.oneOf.3","typeLabel":"text · object"}],"uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.7.effectiveDateOfRight","typeLabel":"number · object | date · object | dateRange · object | text · object"},"clause":{"type":"string","description":"Some Tags capture a simple clause rather than more in-depth data, represented here when that is the case.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.7.clause","typeLabel":"string"},"amendingTag":{"type":"object","description":"The same reference the Tag carries in its own `amendingTag` — both are built from this option's `referenceId`, so reading either gives the option this one amends. Repeated here so a caller working inside `tagComponents` does not have to climb back out to the Tag.","properties":{"effectiveDate":{"type":"string","description":"Effective date of the referenced Tag — the amended option, or the parent option when this sits on a component. Not the effective date of the Tag carrying this reference.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.7.amendingTag.effectiveDate","typeLabel":"string"},"amendedTagId":{"type":"string","description":"Id the Tag's `referenceId` points at: the earlier option this one amends, or the parent option container when this sits on a component Tag.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.7.amendingTag.amendedTagId","typeLabel":"string"}},"uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.7.amendingTag","typeLabel":"object"},"componentTags":{"type":"object","additionalProperties":{"type":"object","description":"A pointer to another Tag. These are the values of a component's `componentTags` map, one per constituent tag the option or right was assembled from, keyed by the part of that tag's `tagName` after the dot. The component surfaces those tags' values on its own fields; fetch a Tag by id with the [get tag endpoint](/api-reference/v2/tags/get-tag) when you need its citations, status, or raw captured text.","properties":{"id":{"type":"string","description":"Tag Id (UUID) of the referenced tag.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.7.componentTags.additionalProperties.id","typeLabel":"string"},"displayName":{"type":"string","description":"Display name of the referenced tag.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.7.componentTags.additionalProperties.displayName","typeLabel":"string"}},"uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.7.componentTags.additionalProperties","typeLabel":"object"},"description":"References to the constituent tags this component was assembled from, keyed by component field.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.7.componentTags","typeLabel":"object"},"renewalPeriodTerm":{"oneOf":[{"type":"object","title":"number","description":"Length of each renewal period. A duration, not a date range. Shape follows the unit the term was captured with: a stated length arrives as `number` — read `unit` for what it counts — and a period the lease words rather than counts arrives as `text`.","required":["kind"],"properties":{"kind":{"type":"string","description":"Discriminator for this shape — always `number` here.","enum":["number"],"isRequired":true,"uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.7.renewalPeriodTerm.oneOf.0.kind","typeLabel":"enum\u003cstring>"},"unit":{"type":"string","description":"Unit qualifier for the value when the source text carried one (e.g. months, per square foot).","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.7.renewalPeriodTerm.oneOf.0.unit","typeLabel":"string"},"capturedData":{"type":"string","description":"The value as captured during extraction, as text.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.7.renewalPeriodTerm.oneOf.0.capturedData","typeLabel":"string"},"ocrText":{"type":"string","description":"Raw source text the value was extracted from.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.7.renewalPeriodTerm.oneOf.0.ocrText","typeLabel":"string"},"value":{"type":"number","description":"The typed value. Its JSON type follows `kind`: a number for `number` and `percent`, a `yyyy-MM-dd` string for `date`, a decimal string for `money`, and the captured text for `text`. Omitted when `capturedData` could not be parsed into that type.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.7.renewalPeriodTerm.oneOf.0.value","typeLabel":"number"}},"uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.7.renewalPeriodTerm.oneOf.0","typeLabel":"number · object"},{"type":"object","title":"text","description":"Length of each renewal period. A duration, not a date range. Shape follows the unit the term was captured with: a stated length arrives as `number` — read `unit` for what it counts — and a period the lease words rather than counts arrives as `text`.","required":["kind"],"properties":{"kind":{"type":"string","description":"Discriminator for this shape — always `text` here.","enum":["text"],"isRequired":true,"uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.7.renewalPeriodTerm.oneOf.1.kind","typeLabel":"enum\u003cstring>"},"unit":{"type":"string","description":"Unit qualifier for the value when the source text carried one (e.g. months, per square foot).","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.7.renewalPeriodTerm.oneOf.1.unit","typeLabel":"string"},"capturedData":{"type":"string","description":"The value as captured during extraction, as text.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.7.renewalPeriodTerm.oneOf.1.capturedData","typeLabel":"string"},"ocrText":{"type":"string","description":"Raw source text the value was extracted from.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.7.renewalPeriodTerm.oneOf.1.ocrText","typeLabel":"string"},"value":{"type":"string","description":"The typed value. Its JSON type follows `kind`: a number for `number` and `percent`, a `yyyy-MM-dd` string for `date`, a decimal string for `money`, and the captured text for `text`. Omitted when `capturedData` could not be parsed into that type.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.7.renewalPeriodTerm.oneOf.1.value","typeLabel":"string"}},"uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.7.renewalPeriodTerm.oneOf.1","typeLabel":"text · object"}],"uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.7.renewalPeriodTerm","typeLabel":"number · object | text · object"},"numberOfAdditionalPeriods":{"oneOf":[{"type":"object","title":"number","description":"How many additional periods may be exercised. Shape follows the unit it was captured with: a stated count arrives as `number` with unit `period`, and a count the lease words rather than states arrives as `text`.","required":["kind"],"properties":{"kind":{"type":"string","description":"Discriminator for this shape — always `number` here.","enum":["number"],"isRequired":true,"uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.7.numberOfAdditionalPeriods.oneOf.0.kind","typeLabel":"enum\u003cstring>"},"unit":{"type":"string","description":"Unit qualifier for the value when the source text carried one (e.g. months, per square foot).","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.7.numberOfAdditionalPeriods.oneOf.0.unit","typeLabel":"string"},"capturedData":{"type":"string","description":"The value as captured during extraction, as text.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.7.numberOfAdditionalPeriods.oneOf.0.capturedData","typeLabel":"string"},"ocrText":{"type":"string","description":"Raw source text the value was extracted from.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.7.numberOfAdditionalPeriods.oneOf.0.ocrText","typeLabel":"string"},"value":{"type":"number","description":"The typed value. Its JSON type follows `kind`: a number for `number` and `percent`, a `yyyy-MM-dd` string for `date`, a decimal string for `money`, and the captured text for `text`. Omitted when `capturedData` could not be parsed into that type.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.7.numberOfAdditionalPeriods.oneOf.0.value","typeLabel":"number"}},"uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.7.numberOfAdditionalPeriods.oneOf.0","typeLabel":"number · object"},{"type":"object","title":"text","description":"How many additional periods may be exercised. Shape follows the unit it was captured with: a stated count arrives as `number` with unit `period`, and a count the lease words rather than states arrives as `text`.","required":["kind"],"properties":{"kind":{"type":"string","description":"Discriminator for this shape — always `text` here.","enum":["text"],"isRequired":true,"uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.7.numberOfAdditionalPeriods.oneOf.1.kind","typeLabel":"enum\u003cstring>"},"unit":{"type":"string","description":"Unit qualifier for the value when the source text carried one (e.g. months, per square foot).","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.7.numberOfAdditionalPeriods.oneOf.1.unit","typeLabel":"string"},"capturedData":{"type":"string","description":"The value as captured during extraction, as text.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.7.numberOfAdditionalPeriods.oneOf.1.capturedData","typeLabel":"string"},"ocrText":{"type":"string","description":"Raw source text the value was extracted from.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.7.numberOfAdditionalPeriods.oneOf.1.ocrText","typeLabel":"string"},"value":{"type":"string","description":"The typed value. Its JSON type follows `kind`: a number for `number` and `percent`, a `yyyy-MM-dd` string for `date`, a decimal string for `money`, and the captured text for `text`. Omitted when `capturedData` could not be parsed into that type.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.7.numberOfAdditionalPeriods.oneOf.1.value","typeLabel":"string"}},"uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.7.numberOfAdditionalPeriods.oneOf.1","typeLabel":"text · object"}],"uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.7.numberOfAdditionalPeriods","typeLabel":"number · object | text · object"},"advancedNoticePeriod":{"oneOf":[{"type":"object","title":"number","description":"Notice the tenant must give to exercise the renewal option. Shape follows the unit the term was captured with: `number` for a plain count, `date` for a stated deadline, and `numberRange` or `dateRange` when the lease states a window rather than a single figure.","required":["kind"],"properties":{"kind":{"type":"string","description":"Discriminator for this shape — always `number` here.","enum":["number"],"isRequired":true,"uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.7.advancedNoticePeriod.oneOf.0.kind","typeLabel":"enum\u003cstring>"},"unit":{"type":"string","description":"Unit qualifier for the value when the source text carried one (e.g. months, per square foot).","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.7.advancedNoticePeriod.oneOf.0.unit","typeLabel":"string"},"capturedData":{"type":"string","description":"The value as captured during extraction, as text.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.7.advancedNoticePeriod.oneOf.0.capturedData","typeLabel":"string"},"ocrText":{"type":"string","description":"Raw source text the value was extracted from.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.7.advancedNoticePeriod.oneOf.0.ocrText","typeLabel":"string"},"value":{"type":"number","description":"The typed value. Its JSON type follows `kind`: a number for `number` and `percent`, a `yyyy-MM-dd` string for `date`, a decimal string for `money`, and the captured text for `text`. Omitted when `capturedData` could not be parsed into that type.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.7.advancedNoticePeriod.oneOf.0.value","typeLabel":"number"}},"uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.7.advancedNoticePeriod.oneOf.0","typeLabel":"number · object"},{"type":"object","title":"date","description":"Notice the tenant must give to exercise the renewal option. Shape follows the unit the term was captured with: `number` for a plain count, `date` for a stated deadline, and `numberRange` or `dateRange` when the lease states a window rather than a single figure.","required":["kind"],"properties":{"kind":{"type":"string","description":"Discriminator for this shape — always `date` here.","enum":["date"],"isRequired":true,"uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.7.advancedNoticePeriod.oneOf.1.kind","typeLabel":"enum\u003cstring>"},"unit":{"type":"string","description":"Unit qualifier for the value when the source text carried one (e.g. months, per square foot).","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.7.advancedNoticePeriod.oneOf.1.unit","typeLabel":"string"},"capturedData":{"type":"string","description":"The value as captured during extraction, as text.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.7.advancedNoticePeriod.oneOf.1.capturedData","typeLabel":"string"},"ocrText":{"type":"string","description":"Raw source text the value was extracted from.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.7.advancedNoticePeriod.oneOf.1.ocrText","typeLabel":"string"},"value":{"type":"string","description":"Present when `kind` is `date`. The captured date, `yyyy-MM-dd`. Omitted when the captured text was not parseable as a date; `capturedData` still holds what was captured.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.7.advancedNoticePeriod.oneOf.1.value","typeLabel":"string"}},"uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.7.advancedNoticePeriod.oneOf.1","typeLabel":"date · object"},{"type":"object","title":"numberRange","description":"Notice the tenant must give to exercise the renewal option. Shape follows the unit the term was captured with: `number` for a plain count, `date` for a stated deadline, and `numberRange` or `dateRange` when the lease states a window rather than a single figure.","required":["kind"],"properties":{"kind":{"type":"string","description":"Discriminator for this shape — always `numberRange` here.","enum":["numberRange"],"isRequired":true,"uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.7.advancedNoticePeriod.oneOf.2.kind","typeLabel":"enum\u003cstring>"},"unit":{"type":"string","description":"Unit qualifier for the value when the source text carried one (e.g. months, per square foot).","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.7.advancedNoticePeriod.oneOf.2.unit","typeLabel":"string"},"capturedData":{"type":"string","description":"The value as captured during extraction, as text.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.7.advancedNoticePeriod.oneOf.2.capturedData","typeLabel":"string"},"ocrText":{"type":"string","description":"Raw source text the value was extracted from.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.7.advancedNoticePeriod.oneOf.2.ocrText","typeLabel":"string"},"start":{"type":"integer","format":"int32","description":"Inclusive start of the range: a `yyyy-MM-dd` string for `dateRange`, an integer for `numberRange`. Omitted together with `end` when `capturedData` could not be split into a parseable pair.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.7.advancedNoticePeriod.oneOf.2.start","typeLabel":"integer\u003cint32>"},"end":{"type":"integer","format":"int32","description":"Inclusive end of the range: a `yyyy-MM-dd` string for `dateRange`, an integer for `numberRange`. Omitted together with `start` when `capturedData` could not be split into a parseable pair.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.7.advancedNoticePeriod.oneOf.2.end","typeLabel":"integer\u003cint32>"}},"uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.7.advancedNoticePeriod.oneOf.2","typeLabel":"numberRange · object"},{"type":"object","title":"dateRange","description":"Notice the tenant must give to exercise the renewal option. Shape follows the unit the term was captured with: `number` for a plain count, `date` for a stated deadline, and `numberRange` or `dateRange` when the lease states a window rather than a single figure.","required":["kind"],"properties":{"kind":{"type":"string","description":"Discriminator for this shape — always `dateRange` here.","enum":["dateRange"],"isRequired":true,"uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.7.advancedNoticePeriod.oneOf.3.kind","typeLabel":"enum\u003cstring>"},"unit":{"type":"string","description":"Unit qualifier for the value when the source text carried one (e.g. months, per square foot).","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.7.advancedNoticePeriod.oneOf.3.unit","typeLabel":"string"},"capturedData":{"type":"string","description":"The value as captured during extraction, as text.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.7.advancedNoticePeriod.oneOf.3.capturedData","typeLabel":"string"},"ocrText":{"type":"string","description":"Raw source text the value was extracted from.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.7.advancedNoticePeriod.oneOf.3.ocrText","typeLabel":"string"},"start":{"type":"string","description":"Present when `kind` is `dateRange`. Inclusive start of the range, `yyyy-MM-dd`. Omitted together with `end` when `capturedData` could not be split into a parseable pair.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.7.advancedNoticePeriod.oneOf.3.start","typeLabel":"string"},"end":{"type":"string","description":"Present when `kind` is `dateRange`. Inclusive end of the range, `yyyy-MM-dd`. Omitted together with `start` when `capturedData` could not be split into a parseable pair.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.7.advancedNoticePeriod.oneOf.3.end","typeLabel":"string"}},"uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.7.advancedNoticePeriod.oneOf.3","typeLabel":"dateRange · object"},{"type":"object","title":"text","description":"Notice the tenant must give to exercise the renewal option. Shape follows the unit the term was captured with: `number` for a plain count, `date` for a stated deadline, and `numberRange` or `dateRange` when the lease states a window rather than a single figure.","required":["kind"],"properties":{"kind":{"type":"string","description":"Discriminator for this shape — always `text` here.","enum":["text"],"isRequired":true,"uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.7.advancedNoticePeriod.oneOf.4.kind","typeLabel":"enum\u003cstring>"},"unit":{"type":"string","description":"Unit qualifier for the value when the source text carried one (e.g. months, per square foot).","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.7.advancedNoticePeriod.oneOf.4.unit","typeLabel":"string"},"capturedData":{"type":"string","description":"The value as captured during extraction, as text.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.7.advancedNoticePeriod.oneOf.4.capturedData","typeLabel":"string"},"ocrText":{"type":"string","description":"Raw source text the value was extracted from.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.7.advancedNoticePeriod.oneOf.4.ocrText","typeLabel":"string"},"value":{"type":"string","description":"The typed value. Its JSON type follows `kind`: a number for `number` and `percent`, a `yyyy-MM-dd` string for `date`, a decimal string for `money`, and the captured text for `text`. Omitted when `capturedData` could not be parsed into that type.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.7.advancedNoticePeriod.oneOf.4.value","typeLabel":"string"}},"uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.7.advancedNoticePeriod.oneOf.4","typeLabel":"text · object"}],"uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.7.advancedNoticePeriod","typeLabel":"number · object | date · object | numberRange · object | dateRange · object | text · object"},"acceptancePeriod":{"oneOf":[{"type":"object","title":"number","description":"Window to accept once the option is triggered. Shape follows the unit the term was captured with: a stated length arrives as `number` — read `unit` for what it counts — and a period the lease words rather than counts arrives as `text`.","required":["kind"],"properties":{"kind":{"type":"string","description":"Discriminator for this shape — always `number` here.","enum":["number"],"isRequired":true,"uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.7.acceptancePeriod.oneOf.0.kind","typeLabel":"enum\u003cstring>"},"unit":{"type":"string","description":"Unit qualifier for the value when the source text carried one (e.g. months, per square foot).","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.7.acceptancePeriod.oneOf.0.unit","typeLabel":"string"},"capturedData":{"type":"string","description":"The value as captured during extraction, as text.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.7.acceptancePeriod.oneOf.0.capturedData","typeLabel":"string"},"ocrText":{"type":"string","description":"Raw source text the value was extracted from.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.7.acceptancePeriod.oneOf.0.ocrText","typeLabel":"string"},"value":{"type":"number","description":"The typed value. Its JSON type follows `kind`: a number for `number` and `percent`, a `yyyy-MM-dd` string for `date`, a decimal string for `money`, and the captured text for `text`. Omitted when `capturedData` could not be parsed into that type.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.7.acceptancePeriod.oneOf.0.value","typeLabel":"number"}},"uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.7.acceptancePeriod.oneOf.0","typeLabel":"number · object"},{"type":"object","title":"text","description":"Window to accept once the option is triggered. Shape follows the unit the term was captured with: a stated length arrives as `number` — read `unit` for what it counts — and a period the lease words rather than counts arrives as `text`.","required":["kind"],"properties":{"kind":{"type":"string","description":"Discriminator for this shape — always `text` here.","enum":["text"],"isRequired":true,"uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.7.acceptancePeriod.oneOf.1.kind","typeLabel":"enum\u003cstring>"},"unit":{"type":"string","description":"Unit qualifier for the value when the source text carried one (e.g. months, per square foot).","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.7.acceptancePeriod.oneOf.1.unit","typeLabel":"string"},"capturedData":{"type":"string","description":"The value as captured during extraction, as text.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.7.acceptancePeriod.oneOf.1.capturedData","typeLabel":"string"},"ocrText":{"type":"string","description":"Raw source text the value was extracted from.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.7.acceptancePeriod.oneOf.1.ocrText","typeLabel":"string"},"value":{"type":"string","description":"The typed value. Its JSON type follows `kind`: a number for `number` and `percent`, a `yyyy-MM-dd` string for `date`, a decimal string for `money`, and the captured text for `text`. Omitted when `capturedData` could not be parsed into that type.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.7.acceptancePeriod.oneOf.1.value","typeLabel":"string"}},"uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.7.acceptancePeriod.oneOf.1","typeLabel":"text · object"}],"uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.7.acceptancePeriod","typeLabel":"number · object | text · object"},"rentalRate":{"oneOf":[{"type":"object","title":"money","description":"Rent rate for the renewal period, when stated. Shape follows the unit the rate was captured with: a stated dollar rate arrives as `money` with the lease's currency, and a percentage of fair market value as `percent`. A rate the lease words rather than states — most often fair market value itself — arrives as `text`, with the wording in `capturedData`. A rate the lease leaves to the landlord also arrives as `text`, with `capturedData` set to `landlordDefined`.","required":["kind"],"properties":{"kind":{"type":"string","description":"Discriminator for this shape — always `money` here.","enum":["money"],"isRequired":true,"uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.7.rentalRate.oneOf.0.kind","typeLabel":"enum\u003cstring>"},"unit":{"type":"string","description":"Unit qualifier for the value when the source text carried one (e.g. months, per square foot).","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.7.rentalRate.oneOf.0.unit","typeLabel":"string"},"capturedData":{"type":"string","description":"The value as captured during extraction, as text.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.7.rentalRate.oneOf.0.capturedData","typeLabel":"string"},"ocrText":{"type":"string","description":"Raw source text the value was extracted from.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.7.rentalRate.oneOf.0.ocrText","typeLabel":"string"},"value":{"type":"string","description":"Present when `kind` is `money`. Decimal string (not a JSON number) holding a BigDecimal rounded to 2 decimals — preserves cent precision through JSON, e.g. \"120000.00\".","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.7.rentalRate.oneOf.0.value","typeLabel":"string"},"currency":{"type":"string","description":"Currency code for the value (e.g. USD).","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.7.rentalRate.oneOf.0.currency","typeLabel":"string"}},"uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.7.rentalRate.oneOf.0","typeLabel":"money · object"},{"type":"object","title":"percent","description":"Rent rate for the renewal period, when stated. Shape follows the unit the rate was captured with: a stated dollar rate arrives as `money` with the lease's currency, and a percentage of fair market value as `percent`. A rate the lease words rather than states — most often fair market value itself — arrives as `text`, with the wording in `capturedData`. A rate the lease leaves to the landlord also arrives as `text`, with `capturedData` set to `landlordDefined`.","required":["kind"],"properties":{"kind":{"type":"string","description":"Discriminator for this shape — always `percent` here.","enum":["percent"],"isRequired":true,"uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.7.rentalRate.oneOf.1.kind","typeLabel":"enum\u003cstring>"},"unit":{"type":"string","description":"Unit qualifier for the value when the source text carried one (e.g. months, per square foot).","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.7.rentalRate.oneOf.1.unit","typeLabel":"string"},"capturedData":{"type":"string","description":"The value as captured during extraction, as text.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.7.rentalRate.oneOf.1.capturedData","typeLabel":"string"},"ocrText":{"type":"string","description":"Raw source text the value was extracted from.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.7.rentalRate.oneOf.1.ocrText","typeLabel":"string"},"value":{"type":"number","description":"The typed value. Its JSON type follows `kind`: a number for `number` and `percent`, a `yyyy-MM-dd` string for `date`, a decimal string for `money`, and the captured text for `text`. Omitted when `capturedData` could not be parsed into that type.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.7.rentalRate.oneOf.1.value","typeLabel":"number"}},"uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.7.rentalRate.oneOf.1","typeLabel":"percent · object"},{"type":"object","title":"text","description":"Rent rate for the renewal period, when stated. Shape follows the unit the rate was captured with: a stated dollar rate arrives as `money` with the lease's currency, and a percentage of fair market value as `percent`. A rate the lease words rather than states — most often fair market value itself — arrives as `text`, with the wording in `capturedData`. A rate the lease leaves to the landlord also arrives as `text`, with `capturedData` set to `landlordDefined`.","required":["kind"],"properties":{"kind":{"type":"string","description":"Discriminator for this shape — always `text` here.","enum":["text"],"isRequired":true,"uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.7.rentalRate.oneOf.2.kind","typeLabel":"enum\u003cstring>"},"unit":{"type":"string","description":"Unit qualifier for the value when the source text carried one (e.g. months, per square foot).","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.7.rentalRate.oneOf.2.unit","typeLabel":"string"},"capturedData":{"type":"string","description":"The value as captured during extraction, as text.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.7.rentalRate.oneOf.2.capturedData","typeLabel":"string"},"ocrText":{"type":"string","description":"Raw source text the value was extracted from.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.7.rentalRate.oneOf.2.ocrText","typeLabel":"string"},"value":{"type":"string","description":"The typed value. Its JSON type follows `kind`: a number for `number` and `percent`, a `yyyy-MM-dd` string for `date`, a decimal string for `money`, and the captured text for `text`. Omitted when `capturedData` could not be parsed into that type.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.7.rentalRate.oneOf.2.value","typeLabel":"string"}},"uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.7.rentalRate.oneOf.2","typeLabel":"text · object"}],"uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.7.rentalRate","typeLabel":"money · object | percent · object | text · object"},"effectivePeriod":{"type":"object","title":"dateRange","description":"Date range during which the right may be exercised.","required":["kind"],"properties":{"kind":{"type":"string","description":"Discriminator for this shape — always `dateRange` here.","enum":["dateRange"],"isRequired":true,"uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.7.effectivePeriod.kind","typeLabel":"enum\u003cstring>"},"unit":{"type":"string","description":"Unit qualifier for the value when the source text carried one (e.g. months, per square foot).","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.7.effectivePeriod.unit","typeLabel":"string"},"capturedData":{"type":"string","description":"The value as captured during extraction, as text.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.7.effectivePeriod.capturedData","typeLabel":"string"},"ocrText":{"type":"string","description":"Raw source text the value was extracted from.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.7.effectivePeriod.ocrText","typeLabel":"string"},"start":{"type":"string","description":"Present when `kind` is `dateRange`. Inclusive start of the range, `yyyy-MM-dd`. Omitted together with `end` when `capturedData` could not be split into a parseable pair.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.7.effectivePeriod.start","typeLabel":"string"},"end":{"type":"string","description":"Present when `kind` is `dateRange`. Inclusive end of the range, `yyyy-MM-dd`. Omitted together with `start` when `capturedData` could not be split into a parseable pair.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.7.effectivePeriod.end","typeLabel":"string"}},"uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.7.effectivePeriod","typeLabel":"dateRange · object"}},"uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.7","typeLabel":"RENEWAL · object"},{"type":"object","title":"RIGHT_OF_FIRST_OFFER","description":"Structured detail for COMPLEX tags (options and rights). Branch on its `kind`. Null for STANDARD tags.","required":["kind"],"properties":{"kind":{"type":"string","description":"Discriminator for this shape — always `RIGHT_OF_FIRST_OFFER` here.","enum":["RIGHT_OF_FIRST_OFFER"],"isRequired":true,"uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.8.kind","typeLabel":"enum\u003cstring>"},"rightStatus":{"type":"string","description":"Status of the option/right itself. Independent of the tag record's `lifecycleStatus` — the two are resolved independently and can disagree.","enum":["AVAILABLE","EXERCISED","STRICKEN","DECLINED","EXPIRED","UNKNOWN"],"uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.8.rightStatus","typeLabel":"enum\u003cstring>"},"rightIsStricken":{"type":"string","description":"Indicator the right was stricken from the lease via a Stricken clause; see `rightStatus` for the resolved state.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.8.rightIsStricken","typeLabel":"string"},"customLabel":{"type":"string","description":"Label denoting the option family this option belongs to. Options with the same `referenceId` should also shared the same `customLabel`","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.8.customLabel","typeLabel":"string"},"effectiveDateOfRight":{"oneOf":[{"type":"object","title":"number","description":"When the current version of the right takes effect. Defaults to the parent tag's own effective date, which arrives as `date` with no `unit` because nothing was captured for it; an `\u003coption>.effectiveDateOfRight` cor tag overrides that. Shape follows the unit it was captured with: a stated deadline arrives as `date`, a period the lease measures rather than dates arrives as `number` — read `unit` for what it counts — and a window as `dateRange`.","required":["kind"],"properties":{"kind":{"type":"string","description":"Discriminator for this shape — always `number` here.","enum":["number"],"isRequired":true,"uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.8.effectiveDateOfRight.oneOf.0.kind","typeLabel":"enum\u003cstring>"},"unit":{"type":"string","description":"Unit qualifier for the value when the source text carried one (e.g. months, per square foot).","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.8.effectiveDateOfRight.oneOf.0.unit","typeLabel":"string"},"capturedData":{"type":"string","description":"The value as captured during extraction, as text.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.8.effectiveDateOfRight.oneOf.0.capturedData","typeLabel":"string"},"ocrText":{"type":"string","description":"Raw source text the value was extracted from.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.8.effectiveDateOfRight.oneOf.0.ocrText","typeLabel":"string"},"value":{"type":"number","description":"The typed value. Its JSON type follows `kind`: a number for `number` and `percent`, a `yyyy-MM-dd` string for `date`, a decimal string for `money`, and the captured text for `text`. Omitted when `capturedData` could not be parsed into that type.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.8.effectiveDateOfRight.oneOf.0.value","typeLabel":"number"}},"uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.8.effectiveDateOfRight.oneOf.0","typeLabel":"number · object"},{"type":"object","title":"date","description":"When the current version of the right takes effect. Defaults to the parent tag's own effective date, which arrives as `date` with no `unit` because nothing was captured for it; an `\u003coption>.effectiveDateOfRight` cor tag overrides that. Shape follows the unit it was captured with: a stated deadline arrives as `date`, a period the lease measures rather than dates arrives as `number` — read `unit` for what it counts — and a window as `dateRange`.","required":["kind"],"properties":{"kind":{"type":"string","description":"Discriminator for this shape — always `date` here.","enum":["date"],"isRequired":true,"uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.8.effectiveDateOfRight.oneOf.1.kind","typeLabel":"enum\u003cstring>"},"unit":{"type":"string","description":"Unit qualifier for the value when the source text carried one (e.g. months, per square foot).","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.8.effectiveDateOfRight.oneOf.1.unit","typeLabel":"string"},"capturedData":{"type":"string","description":"The value as captured during extraction, as text.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.8.effectiveDateOfRight.oneOf.1.capturedData","typeLabel":"string"},"ocrText":{"type":"string","description":"Raw source text the value was extracted from.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.8.effectiveDateOfRight.oneOf.1.ocrText","typeLabel":"string"},"value":{"type":"string","description":"Present when `kind` is `date`. The captured date, `yyyy-MM-dd`. Omitted when the captured text was not parseable as a date; `capturedData` still holds what was captured.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.8.effectiveDateOfRight.oneOf.1.value","typeLabel":"string"}},"uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.8.effectiveDateOfRight.oneOf.1","typeLabel":"date · object"},{"type":"object","title":"dateRange","description":"When the current version of the right takes effect. Defaults to the parent tag's own effective date, which arrives as `date` with no `unit` because nothing was captured for it; an `\u003coption>.effectiveDateOfRight` cor tag overrides that. Shape follows the unit it was captured with: a stated deadline arrives as `date`, a period the lease measures rather than dates arrives as `number` — read `unit` for what it counts — and a window as `dateRange`.","required":["kind"],"properties":{"kind":{"type":"string","description":"Discriminator for this shape — always `dateRange` here.","enum":["dateRange"],"isRequired":true,"uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.8.effectiveDateOfRight.oneOf.2.kind","typeLabel":"enum\u003cstring>"},"unit":{"type":"string","description":"Unit qualifier for the value when the source text carried one (e.g. months, per square foot).","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.8.effectiveDateOfRight.oneOf.2.unit","typeLabel":"string"},"capturedData":{"type":"string","description":"The value as captured during extraction, as text.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.8.effectiveDateOfRight.oneOf.2.capturedData","typeLabel":"string"},"ocrText":{"type":"string","description":"Raw source text the value was extracted from.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.8.effectiveDateOfRight.oneOf.2.ocrText","typeLabel":"string"},"start":{"type":"string","description":"Present when `kind` is `dateRange`. Inclusive start of the range, `yyyy-MM-dd`. Omitted together with `end` when `capturedData` could not be split into a parseable pair.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.8.effectiveDateOfRight.oneOf.2.start","typeLabel":"string"},"end":{"type":"string","description":"Present when `kind` is `dateRange`. Inclusive end of the range, `yyyy-MM-dd`. Omitted together with `start` when `capturedData` could not be split into a parseable pair.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.8.effectiveDateOfRight.oneOf.2.end","typeLabel":"string"}},"uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.8.effectiveDateOfRight.oneOf.2","typeLabel":"dateRange · object"},{"type":"object","title":"text","description":"When the current version of the right takes effect. Defaults to the parent tag's own effective date, which arrives as `date` with no `unit` because nothing was captured for it; an `\u003coption>.effectiveDateOfRight` cor tag overrides that. Shape follows the unit it was captured with: a stated deadline arrives as `date`, a period the lease measures rather than dates arrives as `number` — read `unit` for what it counts — and a window as `dateRange`.","required":["kind"],"properties":{"kind":{"type":"string","description":"Discriminator for this shape — always `text` here.","enum":["text"],"isRequired":true,"uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.8.effectiveDateOfRight.oneOf.3.kind","typeLabel":"enum\u003cstring>"},"unit":{"type":"string","description":"Unit qualifier for the value when the source text carried one (e.g. months, per square foot).","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.8.effectiveDateOfRight.oneOf.3.unit","typeLabel":"string"},"capturedData":{"type":"string","description":"The value as captured during extraction, as text.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.8.effectiveDateOfRight.oneOf.3.capturedData","typeLabel":"string"},"ocrText":{"type":"string","description":"Raw source text the value was extracted from.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.8.effectiveDateOfRight.oneOf.3.ocrText","typeLabel":"string"},"value":{"type":"string","description":"The typed value. Its JSON type follows `kind`: a number for `number` and `percent`, a `yyyy-MM-dd` string for `date`, a decimal string for `money`, and the captured text for `text`. Omitted when `capturedData` could not be parsed into that type.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.8.effectiveDateOfRight.oneOf.3.value","typeLabel":"string"}},"uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.8.effectiveDateOfRight.oneOf.3","typeLabel":"text · object"}],"uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.8.effectiveDateOfRight","typeLabel":"number · object | date · object | dateRange · object | text · object"},"clause":{"type":"string","description":"Some Tags capture a simple clause rather than more in-depth data, represented here when that is the case.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.8.clause","typeLabel":"string"},"amendingTag":{"type":"object","description":"The same reference the Tag carries in its own `amendingTag` — both are built from this option's `referenceId`, so reading either gives the option this one amends. Repeated here so a caller working inside `tagComponents` does not have to climb back out to the Tag.","properties":{"effectiveDate":{"type":"string","description":"Effective date of the referenced Tag — the amended option, or the parent option when this sits on a component. Not the effective date of the Tag carrying this reference.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.8.amendingTag.effectiveDate","typeLabel":"string"},"amendedTagId":{"type":"string","description":"Id the Tag's `referenceId` points at: the earlier option this one amends, or the parent option container when this sits on a component Tag.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.8.amendingTag.amendedTagId","typeLabel":"string"}},"uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.8.amendingTag","typeLabel":"object"},"componentTags":{"type":"object","additionalProperties":{"type":"object","description":"A pointer to another Tag. These are the values of a component's `componentTags` map, one per constituent tag the option or right was assembled from, keyed by the part of that tag's `tagName` after the dot. The component surfaces those tags' values on its own fields; fetch a Tag by id with the [get tag endpoint](/api-reference/v2/tags/get-tag) when you need its citations, status, or raw captured text.","properties":{"id":{"type":"string","description":"Tag Id (UUID) of the referenced tag.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.8.componentTags.additionalProperties.id","typeLabel":"string"},"displayName":{"type":"string","description":"Display name of the referenced tag.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.8.componentTags.additionalProperties.displayName","typeLabel":"string"}},"uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.8.componentTags.additionalProperties","typeLabel":"object"},"description":"References to the constituent tags this component was assembled from, keyed by component field.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.8.componentTags","typeLabel":"object"},"advancedNoticePeriod":{"oneOf":[{"type":"object","title":"number","description":"Notice period attached to the offer. Shape follows the unit the term was captured with: `number` for a plain count, `date` for a stated deadline, and `numberRange` or `dateRange` when the lease states a window rather than a single figure.","required":["kind"],"properties":{"kind":{"type":"string","description":"Discriminator for this shape — always `number` here.","enum":["number"],"isRequired":true,"uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.8.advancedNoticePeriod.oneOf.0.kind","typeLabel":"enum\u003cstring>"},"unit":{"type":"string","description":"Unit qualifier for the value when the source text carried one (e.g. months, per square foot).","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.8.advancedNoticePeriod.oneOf.0.unit","typeLabel":"string"},"capturedData":{"type":"string","description":"The value as captured during extraction, as text.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.8.advancedNoticePeriod.oneOf.0.capturedData","typeLabel":"string"},"ocrText":{"type":"string","description":"Raw source text the value was extracted from.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.8.advancedNoticePeriod.oneOf.0.ocrText","typeLabel":"string"},"value":{"type":"number","description":"The typed value. Its JSON type follows `kind`: a number for `number` and `percent`, a `yyyy-MM-dd` string for `date`, a decimal string for `money`, and the captured text for `text`. Omitted when `capturedData` could not be parsed into that type.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.8.advancedNoticePeriod.oneOf.0.value","typeLabel":"number"}},"uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.8.advancedNoticePeriod.oneOf.0","typeLabel":"number · object"},{"type":"object","title":"date","description":"Notice period attached to the offer. Shape follows the unit the term was captured with: `number` for a plain count, `date` for a stated deadline, and `numberRange` or `dateRange` when the lease states a window rather than a single figure.","required":["kind"],"properties":{"kind":{"type":"string","description":"Discriminator for this shape — always `date` here.","enum":["date"],"isRequired":true,"uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.8.advancedNoticePeriod.oneOf.1.kind","typeLabel":"enum\u003cstring>"},"unit":{"type":"string","description":"Unit qualifier for the value when the source text carried one (e.g. months, per square foot).","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.8.advancedNoticePeriod.oneOf.1.unit","typeLabel":"string"},"capturedData":{"type":"string","description":"The value as captured during extraction, as text.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.8.advancedNoticePeriod.oneOf.1.capturedData","typeLabel":"string"},"ocrText":{"type":"string","description":"Raw source text the value was extracted from.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.8.advancedNoticePeriod.oneOf.1.ocrText","typeLabel":"string"},"value":{"type":"string","description":"Present when `kind` is `date`. The captured date, `yyyy-MM-dd`. Omitted when the captured text was not parseable as a date; `capturedData` still holds what was captured.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.8.advancedNoticePeriod.oneOf.1.value","typeLabel":"string"}},"uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.8.advancedNoticePeriod.oneOf.1","typeLabel":"date · object"},{"type":"object","title":"numberRange","description":"Notice period attached to the offer. Shape follows the unit the term was captured with: `number` for a plain count, `date` for a stated deadline, and `numberRange` or `dateRange` when the lease states a window rather than a single figure.","required":["kind"],"properties":{"kind":{"type":"string","description":"Discriminator for this shape — always `numberRange` here.","enum":["numberRange"],"isRequired":true,"uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.8.advancedNoticePeriod.oneOf.2.kind","typeLabel":"enum\u003cstring>"},"unit":{"type":"string","description":"Unit qualifier for the value when the source text carried one (e.g. months, per square foot).","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.8.advancedNoticePeriod.oneOf.2.unit","typeLabel":"string"},"capturedData":{"type":"string","description":"The value as captured during extraction, as text.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.8.advancedNoticePeriod.oneOf.2.capturedData","typeLabel":"string"},"ocrText":{"type":"string","description":"Raw source text the value was extracted from.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.8.advancedNoticePeriod.oneOf.2.ocrText","typeLabel":"string"},"start":{"type":"integer","format":"int32","description":"Inclusive start of the range: a `yyyy-MM-dd` string for `dateRange`, an integer for `numberRange`. Omitted together with `end` when `capturedData` could not be split into a parseable pair.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.8.advancedNoticePeriod.oneOf.2.start","typeLabel":"integer\u003cint32>"},"end":{"type":"integer","format":"int32","description":"Inclusive end of the range: a `yyyy-MM-dd` string for `dateRange`, an integer for `numberRange`. Omitted together with `start` when `capturedData` could not be split into a parseable pair.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.8.advancedNoticePeriod.oneOf.2.end","typeLabel":"integer\u003cint32>"}},"uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.8.advancedNoticePeriod.oneOf.2","typeLabel":"numberRange · object"},{"type":"object","title":"dateRange","description":"Notice period attached to the offer. Shape follows the unit the term was captured with: `number` for a plain count, `date` for a stated deadline, and `numberRange` or `dateRange` when the lease states a window rather than a single figure.","required":["kind"],"properties":{"kind":{"type":"string","description":"Discriminator for this shape — always `dateRange` here.","enum":["dateRange"],"isRequired":true,"uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.8.advancedNoticePeriod.oneOf.3.kind","typeLabel":"enum\u003cstring>"},"unit":{"type":"string","description":"Unit qualifier for the value when the source text carried one (e.g. months, per square foot).","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.8.advancedNoticePeriod.oneOf.3.unit","typeLabel":"string"},"capturedData":{"type":"string","description":"The value as captured during extraction, as text.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.8.advancedNoticePeriod.oneOf.3.capturedData","typeLabel":"string"},"ocrText":{"type":"string","description":"Raw source text the value was extracted from.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.8.advancedNoticePeriod.oneOf.3.ocrText","typeLabel":"string"},"start":{"type":"string","description":"Present when `kind` is `dateRange`. Inclusive start of the range, `yyyy-MM-dd`. Omitted together with `end` when `capturedData` could not be split into a parseable pair.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.8.advancedNoticePeriod.oneOf.3.start","typeLabel":"string"},"end":{"type":"string","description":"Present when `kind` is `dateRange`. Inclusive end of the range, `yyyy-MM-dd`. Omitted together with `start` when `capturedData` could not be split into a parseable pair.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.8.advancedNoticePeriod.oneOf.3.end","typeLabel":"string"}},"uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.8.advancedNoticePeriod.oneOf.3","typeLabel":"dateRange · object"},{"type":"object","title":"text","description":"Notice period attached to the offer. Shape follows the unit the term was captured with: `number` for a plain count, `date` for a stated deadline, and `numberRange` or `dateRange` when the lease states a window rather than a single figure.","required":["kind"],"properties":{"kind":{"type":"string","description":"Discriminator for this shape — always `text` here.","enum":["text"],"isRequired":true,"uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.8.advancedNoticePeriod.oneOf.4.kind","typeLabel":"enum\u003cstring>"},"unit":{"type":"string","description":"Unit qualifier for the value when the source text carried one (e.g. months, per square foot).","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.8.advancedNoticePeriod.oneOf.4.unit","typeLabel":"string"},"capturedData":{"type":"string","description":"The value as captured during extraction, as text.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.8.advancedNoticePeriod.oneOf.4.capturedData","typeLabel":"string"},"ocrText":{"type":"string","description":"Raw source text the value was extracted from.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.8.advancedNoticePeriod.oneOf.4.ocrText","typeLabel":"string"},"value":{"type":"string","description":"The typed value. Its JSON type follows `kind`: a number for `number` and `percent`, a `yyyy-MM-dd` string for `date`, a decimal string for `money`, and the captured text for `text`. Omitted when `capturedData` could not be parsed into that type.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.8.advancedNoticePeriod.oneOf.4.value","typeLabel":"string"}},"uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.8.advancedNoticePeriod.oneOf.4","typeLabel":"text · object"}],"uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.8.advancedNoticePeriod","typeLabel":"number · object | date · object | numberRange · object | dateRange · object | text · object"},"acceptancePeriod":{"oneOf":[{"type":"object","title":"number","description":"Window the tenant has to accept the offer once made. Shape follows the unit the term was captured with: a stated length arrives as `number` — read `unit` for what it counts — and a period the lease words rather than counts arrives as `text`.","required":["kind"],"properties":{"kind":{"type":"string","description":"Discriminator for this shape — always `number` here.","enum":["number"],"isRequired":true,"uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.8.acceptancePeriod.oneOf.0.kind","typeLabel":"enum\u003cstring>"},"unit":{"type":"string","description":"Unit qualifier for the value when the source text carried one (e.g. months, per square foot).","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.8.acceptancePeriod.oneOf.0.unit","typeLabel":"string"},"capturedData":{"type":"string","description":"The value as captured during extraction, as text.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.8.acceptancePeriod.oneOf.0.capturedData","typeLabel":"string"},"ocrText":{"type":"string","description":"Raw source text the value was extracted from.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.8.acceptancePeriod.oneOf.0.ocrText","typeLabel":"string"},"value":{"type":"number","description":"The typed value. Its JSON type follows `kind`: a number for `number` and `percent`, a `yyyy-MM-dd` string for `date`, a decimal string for `money`, and the captured text for `text`. Omitted when `capturedData` could not be parsed into that type.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.8.acceptancePeriod.oneOf.0.value","typeLabel":"number"}},"uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.8.acceptancePeriod.oneOf.0","typeLabel":"number · object"},{"type":"object","title":"text","description":"Window the tenant has to accept the offer once made. Shape follows the unit the term was captured with: a stated length arrives as `number` — read `unit` for what it counts — and a period the lease words rather than counts arrives as `text`.","required":["kind"],"properties":{"kind":{"type":"string","description":"Discriminator for this shape — always `text` here.","enum":["text"],"isRequired":true,"uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.8.acceptancePeriod.oneOf.1.kind","typeLabel":"enum\u003cstring>"},"unit":{"type":"string","description":"Unit qualifier for the value when the source text carried one (e.g. months, per square foot).","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.8.acceptancePeriod.oneOf.1.unit","typeLabel":"string"},"capturedData":{"type":"string","description":"The value as captured during extraction, as text.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.8.acceptancePeriod.oneOf.1.capturedData","typeLabel":"string"},"ocrText":{"type":"string","description":"Raw source text the value was extracted from.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.8.acceptancePeriod.oneOf.1.ocrText","typeLabel":"string"},"value":{"type":"string","description":"The typed value. Its JSON type follows `kind`: a number for `number` and `percent`, a `yyyy-MM-dd` string for `date`, a decimal string for `money`, and the captured text for `text`. Omitted when `capturedData` could not be parsed into that type.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.8.acceptancePeriod.oneOf.1.value","typeLabel":"string"}},"uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.8.acceptancePeriod.oneOf.1","typeLabel":"text · object"}],"uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.8.acceptancePeriod","typeLabel":"number · object | text · object"},"rentalRate":{"oneOf":[{"type":"object","title":"money","description":"Rent rate for the offered space, when stated. Shape follows the unit the rate was captured with: a stated dollar rate arrives as `money` with the lease's currency, and a percentage of fair market value as `percent`. A rate the lease words rather than states — most often fair market value itself — arrives as `text`, with the wording in `capturedData`. A rate the lease leaves to the landlord also arrives as `text`, with `capturedData` set to `landlordDefined`.","required":["kind"],"properties":{"kind":{"type":"string","description":"Discriminator for this shape — always `money` here.","enum":["money"],"isRequired":true,"uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.8.rentalRate.oneOf.0.kind","typeLabel":"enum\u003cstring>"},"unit":{"type":"string","description":"Unit qualifier for the value when the source text carried one (e.g. months, per square foot).","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.8.rentalRate.oneOf.0.unit","typeLabel":"string"},"capturedData":{"type":"string","description":"The value as captured during extraction, as text.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.8.rentalRate.oneOf.0.capturedData","typeLabel":"string"},"ocrText":{"type":"string","description":"Raw source text the value was extracted from.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.8.rentalRate.oneOf.0.ocrText","typeLabel":"string"},"value":{"type":"string","description":"Present when `kind` is `money`. Decimal string (not a JSON number) holding a BigDecimal rounded to 2 decimals — preserves cent precision through JSON, e.g. \"120000.00\".","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.8.rentalRate.oneOf.0.value","typeLabel":"string"},"currency":{"type":"string","description":"Currency code for the value (e.g. USD).","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.8.rentalRate.oneOf.0.currency","typeLabel":"string"}},"uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.8.rentalRate.oneOf.0","typeLabel":"money · object"},{"type":"object","title":"percent","description":"Rent rate for the offered space, when stated. Shape follows the unit the rate was captured with: a stated dollar rate arrives as `money` with the lease's currency, and a percentage of fair market value as `percent`. A rate the lease words rather than states — most often fair market value itself — arrives as `text`, with the wording in `capturedData`. A rate the lease leaves to the landlord also arrives as `text`, with `capturedData` set to `landlordDefined`.","required":["kind"],"properties":{"kind":{"type":"string","description":"Discriminator for this shape — always `percent` here.","enum":["percent"],"isRequired":true,"uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.8.rentalRate.oneOf.1.kind","typeLabel":"enum\u003cstring>"},"unit":{"type":"string","description":"Unit qualifier for the value when the source text carried one (e.g. months, per square foot).","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.8.rentalRate.oneOf.1.unit","typeLabel":"string"},"capturedData":{"type":"string","description":"The value as captured during extraction, as text.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.8.rentalRate.oneOf.1.capturedData","typeLabel":"string"},"ocrText":{"type":"string","description":"Raw source text the value was extracted from.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.8.rentalRate.oneOf.1.ocrText","typeLabel":"string"},"value":{"type":"number","description":"The typed value. Its JSON type follows `kind`: a number for `number` and `percent`, a `yyyy-MM-dd` string for `date`, a decimal string for `money`, and the captured text for `text`. Omitted when `capturedData` could not be parsed into that type.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.8.rentalRate.oneOf.1.value","typeLabel":"number"}},"uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.8.rentalRate.oneOf.1","typeLabel":"percent · object"},{"type":"object","title":"text","description":"Rent rate for the offered space, when stated. Shape follows the unit the rate was captured with: a stated dollar rate arrives as `money` with the lease's currency, and a percentage of fair market value as `percent`. A rate the lease words rather than states — most often fair market value itself — arrives as `text`, with the wording in `capturedData`. A rate the lease leaves to the landlord also arrives as `text`, with `capturedData` set to `landlordDefined`.","required":["kind"],"properties":{"kind":{"type":"string","description":"Discriminator for this shape — always `text` here.","enum":["text"],"isRequired":true,"uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.8.rentalRate.oneOf.2.kind","typeLabel":"enum\u003cstring>"},"unit":{"type":"string","description":"Unit qualifier for the value when the source text carried one (e.g. months, per square foot).","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.8.rentalRate.oneOf.2.unit","typeLabel":"string"},"capturedData":{"type":"string","description":"The value as captured during extraction, as text.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.8.rentalRate.oneOf.2.capturedData","typeLabel":"string"},"ocrText":{"type":"string","description":"Raw source text the value was extracted from.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.8.rentalRate.oneOf.2.ocrText","typeLabel":"string"},"value":{"type":"string","description":"The typed value. Its JSON type follows `kind`: a number for `number` and `percent`, a `yyyy-MM-dd` string for `date`, a decimal string for `money`, and the captured text for `text`. Omitted when `capturedData` could not be parsed into that type.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.8.rentalRate.oneOf.2.value","typeLabel":"string"}},"uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.8.rentalRate.oneOf.2","typeLabel":"text · object"}],"uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.8.rentalRate","typeLabel":"money · object | percent · object | text · object"},"expirationDateOfRight":{"oneOf":[{"type":"object","title":"number","description":"When the right of first offer expires. Shape follows the unit it was captured with: a stated deadline arrives as `date`, and a deadline the lease states in relative terms arrives as `number` — read `unit` for what it counts. Wording that is neither arrives as `text`, and `capturedData` always holds the raw value.","required":["kind"],"properties":{"kind":{"type":"string","description":"Discriminator for this shape — always `number` here.","enum":["number"],"isRequired":true,"uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.8.expirationDateOfRight.oneOf.0.kind","typeLabel":"enum\u003cstring>"},"unit":{"type":"string","description":"Unit qualifier for the value when the source text carried one (e.g. months, per square foot).","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.8.expirationDateOfRight.oneOf.0.unit","typeLabel":"string"},"capturedData":{"type":"string","description":"The value as captured during extraction, as text.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.8.expirationDateOfRight.oneOf.0.capturedData","typeLabel":"string"},"ocrText":{"type":"string","description":"Raw source text the value was extracted from.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.8.expirationDateOfRight.oneOf.0.ocrText","typeLabel":"string"},"value":{"type":"number","description":"The typed value. Its JSON type follows `kind`: a number for `number` and `percent`, a `yyyy-MM-dd` string for `date`, a decimal string for `money`, and the captured text for `text`. Omitted when `capturedData` could not be parsed into that type.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.8.expirationDateOfRight.oneOf.0.value","typeLabel":"number"}},"uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.8.expirationDateOfRight.oneOf.0","typeLabel":"number · object"},{"type":"object","title":"date","description":"When the right of first offer expires. Shape follows the unit it was captured with: a stated deadline arrives as `date`, and a deadline the lease states in relative terms arrives as `number` — read `unit` for what it counts. Wording that is neither arrives as `text`, and `capturedData` always holds the raw value.","required":["kind"],"properties":{"kind":{"type":"string","description":"Discriminator for this shape — always `date` here.","enum":["date"],"isRequired":true,"uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.8.expirationDateOfRight.oneOf.1.kind","typeLabel":"enum\u003cstring>"},"unit":{"type":"string","description":"Unit qualifier for the value when the source text carried one (e.g. months, per square foot).","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.8.expirationDateOfRight.oneOf.1.unit","typeLabel":"string"},"capturedData":{"type":"string","description":"The value as captured during extraction, as text.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.8.expirationDateOfRight.oneOf.1.capturedData","typeLabel":"string"},"ocrText":{"type":"string","description":"Raw source text the value was extracted from.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.8.expirationDateOfRight.oneOf.1.ocrText","typeLabel":"string"},"value":{"type":"string","description":"Present when `kind` is `date`. The captured date, `yyyy-MM-dd`. Omitted when the captured text was not parseable as a date; `capturedData` still holds what was captured.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.8.expirationDateOfRight.oneOf.1.value","typeLabel":"string"}},"uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.8.expirationDateOfRight.oneOf.1","typeLabel":"date · object"},{"type":"object","title":"text","description":"When the right of first offer expires. Shape follows the unit it was captured with: a stated deadline arrives as `date`, and a deadline the lease states in relative terms arrives as `number` — read `unit` for what it counts. Wording that is neither arrives as `text`, and `capturedData` always holds the raw value.","required":["kind"],"properties":{"kind":{"type":"string","description":"Discriminator for this shape — always `text` here.","enum":["text"],"isRequired":true,"uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.8.expirationDateOfRight.oneOf.2.kind","typeLabel":"enum\u003cstring>"},"unit":{"type":"string","description":"Unit qualifier for the value when the source text carried one (e.g. months, per square foot).","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.8.expirationDateOfRight.oneOf.2.unit","typeLabel":"string"},"capturedData":{"type":"string","description":"The value as captured during extraction, as text.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.8.expirationDateOfRight.oneOf.2.capturedData","typeLabel":"string"},"ocrText":{"type":"string","description":"Raw source text the value was extracted from.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.8.expirationDateOfRight.oneOf.2.ocrText","typeLabel":"string"},"value":{"type":"string","description":"The typed value. Its JSON type follows `kind`: a number for `number` and `percent`, a `yyyy-MM-dd` string for `date`, a decimal string for `money`, and the captured text for `text`. Omitted when `capturedData` could not be parsed into that type.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.8.expirationDateOfRight.oneOf.2.value","typeLabel":"string"}},"uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.8.expirationDateOfRight.oneOf.2","typeLabel":"text · object"}],"uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.8.expirationDateOfRight","typeLabel":"number · object | date · object | text · object"},"offeredSpace":{"type":"array","description":"Spaces the right applies to, in the same shape as a Tag's `applicableSpaces`: suite names matched against `BuildingSpace.suiteNumber` by string, with the `Entire building` and `All spaces` sentinels for whole-building scope.","items":{"type":"object","description":"Reference to space in a Building: one Building Space suiteNumber, an entire floor, the entire Building, or all spaces. `scope` says which of those it is, and `name` carries the label — for `BUILDING` and `ALL` that label is the sentinel `Entire building` or `All spaces` rather than the name of a real Building Space. The `ALL` scope means all suites in the relevant context are referenced: a Tag with `scope: ALL` refers to every suite defined in the suiteNumber tag belonging to that Document or Lease.","properties":{"name":{"type":"string","description":"The space's display name: a suite name that matches `BuildingSpace.suiteNumber` by string (scope SUITE), a floor designation (scope FLOOR), or the sentinels `Entire building` / `All spaces`.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.8.offeredSpace.items.[INDEX].name","typeLabel":"string"},"buildingId":{"type":"string","description":"Building this entry refers to. Can differ from the parent lease's own Building when a lease spans multiple buildings or has relocated.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.8.offeredSpace.items.[INDEX].buildingId","typeLabel":"string"},"scope":{"type":"string","description":"Granularity of the reference: SUITE (one suite), FLOOR (a whole floor), BUILDING (the entire building), or ALL (all spaces).","enum":["BUILDING","FLOOR","SUITE","ALL"],"uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.8.offeredSpace.items.[INDEX].scope","typeLabel":"enum\u003cstring>"}},"uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.8.offeredSpace.items.[INDEX]","typeLabel":"object"},"uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.8.offeredSpace","typeLabel":"object[]"},"oneTimeOrOngoing":{"type":"string","description":"Whether the right can be exercised once or persists through the term, as captured. Free text rather than a fixed set of values.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.8.oneTimeOrOngoing","typeLabel":"string"},"effectivePeriod":{"type":"object","title":"dateRange","description":"Date range during which the right applies.","required":["kind"],"properties":{"kind":{"type":"string","description":"Discriminator for this shape — always `dateRange` here.","enum":["dateRange"],"isRequired":true,"uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.8.effectivePeriod.kind","typeLabel":"enum\u003cstring>"},"unit":{"type":"string","description":"Unit qualifier for the value when the source text carried one (e.g. months, per square foot).","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.8.effectivePeriod.unit","typeLabel":"string"},"capturedData":{"type":"string","description":"The value as captured during extraction, as text.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.8.effectivePeriod.capturedData","typeLabel":"string"},"ocrText":{"type":"string","description":"Raw source text the value was extracted from.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.8.effectivePeriod.ocrText","typeLabel":"string"},"start":{"type":"string","description":"Present when `kind` is `dateRange`. Inclusive start of the range, `yyyy-MM-dd`. Omitted together with `end` when `capturedData` could not be split into a parseable pair.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.8.effectivePeriod.start","typeLabel":"string"},"end":{"type":"string","description":"Present when `kind` is `dateRange`. Inclusive end of the range, `yyyy-MM-dd`. Omitted together with `start` when `capturedData` could not be split into a parseable pair.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.8.effectivePeriod.end","typeLabel":"string"}},"uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.8.effectivePeriod","typeLabel":"dateRange · object"}},"uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.8","typeLabel":"RIGHT_OF_FIRST_OFFER · object"},{"type":"object","title":"RIGHT_OF_FIRST_REFUSAL","description":"Structured detail for COMPLEX tags (options and rights). Branch on its `kind`. Null for STANDARD tags.","required":["kind"],"properties":{"kind":{"type":"string","description":"Discriminator for this shape — always `RIGHT_OF_FIRST_REFUSAL` here.","enum":["RIGHT_OF_FIRST_REFUSAL"],"isRequired":true,"uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.9.kind","typeLabel":"enum\u003cstring>"},"rightStatus":{"type":"string","description":"Status of the option/right itself. Independent of the tag record's `lifecycleStatus` — the two are resolved independently and can disagree.","enum":["AVAILABLE","EXERCISED","STRICKEN","DECLINED","EXPIRED","UNKNOWN"],"uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.9.rightStatus","typeLabel":"enum\u003cstring>"},"rightIsStricken":{"type":"string","description":"Indicator the right was stricken from the lease via a Stricken clause; see `rightStatus` for the resolved state.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.9.rightIsStricken","typeLabel":"string"},"customLabel":{"type":"string","description":"Label denoting the option family this option belongs to. Options with the same `referenceId` should also shared the same `customLabel`","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.9.customLabel","typeLabel":"string"},"effectiveDateOfRight":{"oneOf":[{"type":"object","title":"number","description":"When the current version of the right takes effect. Defaults to the parent tag's own effective date, which arrives as `date` with no `unit` because nothing was captured for it; an `\u003coption>.effectiveDateOfRight` cor tag overrides that. Shape follows the unit it was captured with: a stated deadline arrives as `date`, a period the lease measures rather than dates arrives as `number` — read `unit` for what it counts — and a window as `dateRange`.","required":["kind"],"properties":{"kind":{"type":"string","description":"Discriminator for this shape — always `number` here.","enum":["number"],"isRequired":true,"uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.9.effectiveDateOfRight.oneOf.0.kind","typeLabel":"enum\u003cstring>"},"unit":{"type":"string","description":"Unit qualifier for the value when the source text carried one (e.g. months, per square foot).","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.9.effectiveDateOfRight.oneOf.0.unit","typeLabel":"string"},"capturedData":{"type":"string","description":"The value as captured during extraction, as text.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.9.effectiveDateOfRight.oneOf.0.capturedData","typeLabel":"string"},"ocrText":{"type":"string","description":"Raw source text the value was extracted from.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.9.effectiveDateOfRight.oneOf.0.ocrText","typeLabel":"string"},"value":{"type":"number","description":"The typed value. Its JSON type follows `kind`: a number for `number` and `percent`, a `yyyy-MM-dd` string for `date`, a decimal string for `money`, and the captured text for `text`. Omitted when `capturedData` could not be parsed into that type.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.9.effectiveDateOfRight.oneOf.0.value","typeLabel":"number"}},"uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.9.effectiveDateOfRight.oneOf.0","typeLabel":"number · object"},{"type":"object","title":"date","description":"When the current version of the right takes effect. Defaults to the parent tag's own effective date, which arrives as `date` with no `unit` because nothing was captured for it; an `\u003coption>.effectiveDateOfRight` cor tag overrides that. Shape follows the unit it was captured with: a stated deadline arrives as `date`, a period the lease measures rather than dates arrives as `number` — read `unit` for what it counts — and a window as `dateRange`.","required":["kind"],"properties":{"kind":{"type":"string","description":"Discriminator for this shape — always `date` here.","enum":["date"],"isRequired":true,"uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.9.effectiveDateOfRight.oneOf.1.kind","typeLabel":"enum\u003cstring>"},"unit":{"type":"string","description":"Unit qualifier for the value when the source text carried one (e.g. months, per square foot).","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.9.effectiveDateOfRight.oneOf.1.unit","typeLabel":"string"},"capturedData":{"type":"string","description":"The value as captured during extraction, as text.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.9.effectiveDateOfRight.oneOf.1.capturedData","typeLabel":"string"},"ocrText":{"type":"string","description":"Raw source text the value was extracted from.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.9.effectiveDateOfRight.oneOf.1.ocrText","typeLabel":"string"},"value":{"type":"string","description":"Present when `kind` is `date`. The captured date, `yyyy-MM-dd`. Omitted when the captured text was not parseable as a date; `capturedData` still holds what was captured.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.9.effectiveDateOfRight.oneOf.1.value","typeLabel":"string"}},"uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.9.effectiveDateOfRight.oneOf.1","typeLabel":"date · object"},{"type":"object","title":"dateRange","description":"When the current version of the right takes effect. Defaults to the parent tag's own effective date, which arrives as `date` with no `unit` because nothing was captured for it; an `\u003coption>.effectiveDateOfRight` cor tag overrides that. Shape follows the unit it was captured with: a stated deadline arrives as `date`, a period the lease measures rather than dates arrives as `number` — read `unit` for what it counts — and a window as `dateRange`.","required":["kind"],"properties":{"kind":{"type":"string","description":"Discriminator for this shape — always `dateRange` here.","enum":["dateRange"],"isRequired":true,"uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.9.effectiveDateOfRight.oneOf.2.kind","typeLabel":"enum\u003cstring>"},"unit":{"type":"string","description":"Unit qualifier for the value when the source text carried one (e.g. months, per square foot).","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.9.effectiveDateOfRight.oneOf.2.unit","typeLabel":"string"},"capturedData":{"type":"string","description":"The value as captured during extraction, as text.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.9.effectiveDateOfRight.oneOf.2.capturedData","typeLabel":"string"},"ocrText":{"type":"string","description":"Raw source text the value was extracted from.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.9.effectiveDateOfRight.oneOf.2.ocrText","typeLabel":"string"},"start":{"type":"string","description":"Present when `kind` is `dateRange`. Inclusive start of the range, `yyyy-MM-dd`. Omitted together with `end` when `capturedData` could not be split into a parseable pair.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.9.effectiveDateOfRight.oneOf.2.start","typeLabel":"string"},"end":{"type":"string","description":"Present when `kind` is `dateRange`. Inclusive end of the range, `yyyy-MM-dd`. Omitted together with `start` when `capturedData` could not be split into a parseable pair.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.9.effectiveDateOfRight.oneOf.2.end","typeLabel":"string"}},"uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.9.effectiveDateOfRight.oneOf.2","typeLabel":"dateRange · object"},{"type":"object","title":"text","description":"When the current version of the right takes effect. Defaults to the parent tag's own effective date, which arrives as `date` with no `unit` because nothing was captured for it; an `\u003coption>.effectiveDateOfRight` cor tag overrides that. Shape follows the unit it was captured with: a stated deadline arrives as `date`, a period the lease measures rather than dates arrives as `number` — read `unit` for what it counts — and a window as `dateRange`.","required":["kind"],"properties":{"kind":{"type":"string","description":"Discriminator for this shape — always `text` here.","enum":["text"],"isRequired":true,"uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.9.effectiveDateOfRight.oneOf.3.kind","typeLabel":"enum\u003cstring>"},"unit":{"type":"string","description":"Unit qualifier for the value when the source text carried one (e.g. months, per square foot).","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.9.effectiveDateOfRight.oneOf.3.unit","typeLabel":"string"},"capturedData":{"type":"string","description":"The value as captured during extraction, as text.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.9.effectiveDateOfRight.oneOf.3.capturedData","typeLabel":"string"},"ocrText":{"type":"string","description":"Raw source text the value was extracted from.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.9.effectiveDateOfRight.oneOf.3.ocrText","typeLabel":"string"},"value":{"type":"string","description":"The typed value. Its JSON type follows `kind`: a number for `number` and `percent`, a `yyyy-MM-dd` string for `date`, a decimal string for `money`, and the captured text for `text`. Omitted when `capturedData` could not be parsed into that type.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.9.effectiveDateOfRight.oneOf.3.value","typeLabel":"string"}},"uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.9.effectiveDateOfRight.oneOf.3","typeLabel":"text · object"}],"uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.9.effectiveDateOfRight","typeLabel":"number · object | date · object | dateRange · object | text · object"},"clause":{"type":"string","description":"Some Tags capture a simple clause rather than more in-depth data, represented here when that is the case.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.9.clause","typeLabel":"string"},"amendingTag":{"type":"object","description":"The same reference the Tag carries in its own `amendingTag` — both are built from this option's `referenceId`, so reading either gives the option this one amends. Repeated here so a caller working inside `tagComponents` does not have to climb back out to the Tag.","properties":{"effectiveDate":{"type":"string","description":"Effective date of the referenced Tag — the amended option, or the parent option when this sits on a component. Not the effective date of the Tag carrying this reference.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.9.amendingTag.effectiveDate","typeLabel":"string"},"amendedTagId":{"type":"string","description":"Id the Tag's `referenceId` points at: the earlier option this one amends, or the parent option container when this sits on a component Tag.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.9.amendingTag.amendedTagId","typeLabel":"string"}},"uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.9.amendingTag","typeLabel":"object"},"componentTags":{"type":"object","additionalProperties":{"type":"object","description":"A pointer to another Tag. These are the values of a component's `componentTags` map, one per constituent tag the option or right was assembled from, keyed by the part of that tag's `tagName` after the dot. The component surfaces those tags' values on its own fields; fetch a Tag by id with the [get tag endpoint](/api-reference/v2/tags/get-tag) when you need its citations, status, or raw captured text.","properties":{"id":{"type":"string","description":"Tag Id (UUID) of the referenced tag.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.9.componentTags.additionalProperties.id","typeLabel":"string"},"displayName":{"type":"string","description":"Display name of the referenced tag.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.9.componentTags.additionalProperties.displayName","typeLabel":"string"}},"uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.9.componentTags.additionalProperties","typeLabel":"object"},"description":"References to the constituent tags this component was assembled from, keyed by component field.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.9.componentTags","typeLabel":"object"},"advancedNoticePeriod":{"oneOf":[{"type":"object","title":"number","description":"Notice period attached to the right. Shape follows the unit the term was captured with: `number` for a plain count, `date` for a stated deadline, and `numberRange` or `dateRange` when the lease states a window rather than a single figure.","required":["kind"],"properties":{"kind":{"type":"string","description":"Discriminator for this shape — always `number` here.","enum":["number"],"isRequired":true,"uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.9.advancedNoticePeriod.oneOf.0.kind","typeLabel":"enum\u003cstring>"},"unit":{"type":"string","description":"Unit qualifier for the value when the source text carried one (e.g. months, per square foot).","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.9.advancedNoticePeriod.oneOf.0.unit","typeLabel":"string"},"capturedData":{"type":"string","description":"The value as captured during extraction, as text.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.9.advancedNoticePeriod.oneOf.0.capturedData","typeLabel":"string"},"ocrText":{"type":"string","description":"Raw source text the value was extracted from.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.9.advancedNoticePeriod.oneOf.0.ocrText","typeLabel":"string"},"value":{"type":"number","description":"The typed value. Its JSON type follows `kind`: a number for `number` and `percent`, a `yyyy-MM-dd` string for `date`, a decimal string for `money`, and the captured text for `text`. Omitted when `capturedData` could not be parsed into that type.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.9.advancedNoticePeriod.oneOf.0.value","typeLabel":"number"}},"uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.9.advancedNoticePeriod.oneOf.0","typeLabel":"number · object"},{"type":"object","title":"date","description":"Notice period attached to the right. Shape follows the unit the term was captured with: `number` for a plain count, `date` for a stated deadline, and `numberRange` or `dateRange` when the lease states a window rather than a single figure.","required":["kind"],"properties":{"kind":{"type":"string","description":"Discriminator for this shape — always `date` here.","enum":["date"],"isRequired":true,"uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.9.advancedNoticePeriod.oneOf.1.kind","typeLabel":"enum\u003cstring>"},"unit":{"type":"string","description":"Unit qualifier for the value when the source text carried one (e.g. months, per square foot).","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.9.advancedNoticePeriod.oneOf.1.unit","typeLabel":"string"},"capturedData":{"type":"string","description":"The value as captured during extraction, as text.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.9.advancedNoticePeriod.oneOf.1.capturedData","typeLabel":"string"},"ocrText":{"type":"string","description":"Raw source text the value was extracted from.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.9.advancedNoticePeriod.oneOf.1.ocrText","typeLabel":"string"},"value":{"type":"string","description":"Present when `kind` is `date`. The captured date, `yyyy-MM-dd`. Omitted when the captured text was not parseable as a date; `capturedData` still holds what was captured.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.9.advancedNoticePeriod.oneOf.1.value","typeLabel":"string"}},"uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.9.advancedNoticePeriod.oneOf.1","typeLabel":"date · object"},{"type":"object","title":"numberRange","description":"Notice period attached to the right. Shape follows the unit the term was captured with: `number` for a plain count, `date` for a stated deadline, and `numberRange` or `dateRange` when the lease states a window rather than a single figure.","required":["kind"],"properties":{"kind":{"type":"string","description":"Discriminator for this shape — always `numberRange` here.","enum":["numberRange"],"isRequired":true,"uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.9.advancedNoticePeriod.oneOf.2.kind","typeLabel":"enum\u003cstring>"},"unit":{"type":"string","description":"Unit qualifier for the value when the source text carried one (e.g. months, per square foot).","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.9.advancedNoticePeriod.oneOf.2.unit","typeLabel":"string"},"capturedData":{"type":"string","description":"The value as captured during extraction, as text.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.9.advancedNoticePeriod.oneOf.2.capturedData","typeLabel":"string"},"ocrText":{"type":"string","description":"Raw source text the value was extracted from.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.9.advancedNoticePeriod.oneOf.2.ocrText","typeLabel":"string"},"start":{"type":"integer","format":"int32","description":"Inclusive start of the range: a `yyyy-MM-dd` string for `dateRange`, an integer for `numberRange`. Omitted together with `end` when `capturedData` could not be split into a parseable pair.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.9.advancedNoticePeriod.oneOf.2.start","typeLabel":"integer\u003cint32>"},"end":{"type":"integer","format":"int32","description":"Inclusive end of the range: a `yyyy-MM-dd` string for `dateRange`, an integer for `numberRange`. Omitted together with `start` when `capturedData` could not be split into a parseable pair.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.9.advancedNoticePeriod.oneOf.2.end","typeLabel":"integer\u003cint32>"}},"uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.9.advancedNoticePeriod.oneOf.2","typeLabel":"numberRange · object"},{"type":"object","title":"dateRange","description":"Notice period attached to the right. Shape follows the unit the term was captured with: `number` for a plain count, `date` for a stated deadline, and `numberRange` or `dateRange` when the lease states a window rather than a single figure.","required":["kind"],"properties":{"kind":{"type":"string","description":"Discriminator for this shape — always `dateRange` here.","enum":["dateRange"],"isRequired":true,"uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.9.advancedNoticePeriod.oneOf.3.kind","typeLabel":"enum\u003cstring>"},"unit":{"type":"string","description":"Unit qualifier for the value when the source text carried one (e.g. months, per square foot).","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.9.advancedNoticePeriod.oneOf.3.unit","typeLabel":"string"},"capturedData":{"type":"string","description":"The value as captured during extraction, as text.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.9.advancedNoticePeriod.oneOf.3.capturedData","typeLabel":"string"},"ocrText":{"type":"string","description":"Raw source text the value was extracted from.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.9.advancedNoticePeriod.oneOf.3.ocrText","typeLabel":"string"},"start":{"type":"string","description":"Present when `kind` is `dateRange`. Inclusive start of the range, `yyyy-MM-dd`. Omitted together with `end` when `capturedData` could not be split into a parseable pair.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.9.advancedNoticePeriod.oneOf.3.start","typeLabel":"string"},"end":{"type":"string","description":"Present when `kind` is `dateRange`. Inclusive end of the range, `yyyy-MM-dd`. Omitted together with `start` when `capturedData` could not be split into a parseable pair.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.9.advancedNoticePeriod.oneOf.3.end","typeLabel":"string"}},"uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.9.advancedNoticePeriod.oneOf.3","typeLabel":"dateRange · object"},{"type":"object","title":"text","description":"Notice period attached to the right. Shape follows the unit the term was captured with: `number` for a plain count, `date` for a stated deadline, and `numberRange` or `dateRange` when the lease states a window rather than a single figure.","required":["kind"],"properties":{"kind":{"type":"string","description":"Discriminator for this shape — always `text` here.","enum":["text"],"isRequired":true,"uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.9.advancedNoticePeriod.oneOf.4.kind","typeLabel":"enum\u003cstring>"},"unit":{"type":"string","description":"Unit qualifier for the value when the source text carried one (e.g. months, per square foot).","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.9.advancedNoticePeriod.oneOf.4.unit","typeLabel":"string"},"capturedData":{"type":"string","description":"The value as captured during extraction, as text.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.9.advancedNoticePeriod.oneOf.4.capturedData","typeLabel":"string"},"ocrText":{"type":"string","description":"Raw source text the value was extracted from.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.9.advancedNoticePeriod.oneOf.4.ocrText","typeLabel":"string"},"value":{"type":"string","description":"The typed value. Its JSON type follows `kind`: a number for `number` and `percent`, a `yyyy-MM-dd` string for `date`, a decimal string for `money`, and the captured text for `text`. Omitted when `capturedData` could not be parsed into that type.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.9.advancedNoticePeriod.oneOf.4.value","typeLabel":"string"}},"uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.9.advancedNoticePeriod.oneOf.4","typeLabel":"text · object"}],"uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.9.advancedNoticePeriod","typeLabel":"number · object | date · object | numberRange · object | dateRange · object | text · object"},"acceptancePeriod":{"oneOf":[{"type":"object","title":"number","description":"Window the tenant has to match a third-party offer. Shape follows the unit the term was captured with: a stated length arrives as `number` — read `unit` for what it counts — and a period the lease words rather than counts arrives as `text`.","required":["kind"],"properties":{"kind":{"type":"string","description":"Discriminator for this shape — always `number` here.","enum":["number"],"isRequired":true,"uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.9.acceptancePeriod.oneOf.0.kind","typeLabel":"enum\u003cstring>"},"unit":{"type":"string","description":"Unit qualifier for the value when the source text carried one (e.g. months, per square foot).","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.9.acceptancePeriod.oneOf.0.unit","typeLabel":"string"},"capturedData":{"type":"string","description":"The value as captured during extraction, as text.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.9.acceptancePeriod.oneOf.0.capturedData","typeLabel":"string"},"ocrText":{"type":"string","description":"Raw source text the value was extracted from.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.9.acceptancePeriod.oneOf.0.ocrText","typeLabel":"string"},"value":{"type":"number","description":"The typed value. Its JSON type follows `kind`: a number for `number` and `percent`, a `yyyy-MM-dd` string for `date`, a decimal string for `money`, and the captured text for `text`. Omitted when `capturedData` could not be parsed into that type.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.9.acceptancePeriod.oneOf.0.value","typeLabel":"number"}},"uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.9.acceptancePeriod.oneOf.0","typeLabel":"number · object"},{"type":"object","title":"text","description":"Window the tenant has to match a third-party offer. Shape follows the unit the term was captured with: a stated length arrives as `number` — read `unit` for what it counts — and a period the lease words rather than counts arrives as `text`.","required":["kind"],"properties":{"kind":{"type":"string","description":"Discriminator for this shape — always `text` here.","enum":["text"],"isRequired":true,"uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.9.acceptancePeriod.oneOf.1.kind","typeLabel":"enum\u003cstring>"},"unit":{"type":"string","description":"Unit qualifier for the value when the source text carried one (e.g. months, per square foot).","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.9.acceptancePeriod.oneOf.1.unit","typeLabel":"string"},"capturedData":{"type":"string","description":"The value as captured during extraction, as text.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.9.acceptancePeriod.oneOf.1.capturedData","typeLabel":"string"},"ocrText":{"type":"string","description":"Raw source text the value was extracted from.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.9.acceptancePeriod.oneOf.1.ocrText","typeLabel":"string"},"value":{"type":"string","description":"The typed value. Its JSON type follows `kind`: a number for `number` and `percent`, a `yyyy-MM-dd` string for `date`, a decimal string for `money`, and the captured text for `text`. Omitted when `capturedData` could not be parsed into that type.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.9.acceptancePeriod.oneOf.1.value","typeLabel":"string"}},"uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.9.acceptancePeriod.oneOf.1","typeLabel":"text · object"}],"uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.9.acceptancePeriod","typeLabel":"number · object | text · object"},"rentalRate":{"oneOf":[{"type":"object","title":"money","description":"Rent rate for the refusal space, when stated. Shape follows the unit the rate was captured with: a stated dollar rate arrives as `money` with the lease's currency, and a percentage of fair market value as `percent`. A rate the lease words rather than states — most often fair market value itself — arrives as `text`, with the wording in `capturedData`. A rate the lease leaves to the landlord also arrives as `text`, with `capturedData` set to `landlordDefined`.","required":["kind"],"properties":{"kind":{"type":"string","description":"Discriminator for this shape — always `money` here.","enum":["money"],"isRequired":true,"uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.9.rentalRate.oneOf.0.kind","typeLabel":"enum\u003cstring>"},"unit":{"type":"string","description":"Unit qualifier for the value when the source text carried one (e.g. months, per square foot).","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.9.rentalRate.oneOf.0.unit","typeLabel":"string"},"capturedData":{"type":"string","description":"The value as captured during extraction, as text.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.9.rentalRate.oneOf.0.capturedData","typeLabel":"string"},"ocrText":{"type":"string","description":"Raw source text the value was extracted from.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.9.rentalRate.oneOf.0.ocrText","typeLabel":"string"},"value":{"type":"string","description":"Present when `kind` is `money`. Decimal string (not a JSON number) holding a BigDecimal rounded to 2 decimals — preserves cent precision through JSON, e.g. \"120000.00\".","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.9.rentalRate.oneOf.0.value","typeLabel":"string"},"currency":{"type":"string","description":"Currency code for the value (e.g. USD).","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.9.rentalRate.oneOf.0.currency","typeLabel":"string"}},"uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.9.rentalRate.oneOf.0","typeLabel":"money · object"},{"type":"object","title":"percent","description":"Rent rate for the refusal space, when stated. Shape follows the unit the rate was captured with: a stated dollar rate arrives as `money` with the lease's currency, and a percentage of fair market value as `percent`. A rate the lease words rather than states — most often fair market value itself — arrives as `text`, with the wording in `capturedData`. A rate the lease leaves to the landlord also arrives as `text`, with `capturedData` set to `landlordDefined`.","required":["kind"],"properties":{"kind":{"type":"string","description":"Discriminator for this shape — always `percent` here.","enum":["percent"],"isRequired":true,"uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.9.rentalRate.oneOf.1.kind","typeLabel":"enum\u003cstring>"},"unit":{"type":"string","description":"Unit qualifier for the value when the source text carried one (e.g. months, per square foot).","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.9.rentalRate.oneOf.1.unit","typeLabel":"string"},"capturedData":{"type":"string","description":"The value as captured during extraction, as text.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.9.rentalRate.oneOf.1.capturedData","typeLabel":"string"},"ocrText":{"type":"string","description":"Raw source text the value was extracted from.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.9.rentalRate.oneOf.1.ocrText","typeLabel":"string"},"value":{"type":"number","description":"The typed value. Its JSON type follows `kind`: a number for `number` and `percent`, a `yyyy-MM-dd` string for `date`, a decimal string for `money`, and the captured text for `text`. Omitted when `capturedData` could not be parsed into that type.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.9.rentalRate.oneOf.1.value","typeLabel":"number"}},"uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.9.rentalRate.oneOf.1","typeLabel":"percent · object"},{"type":"object","title":"text","description":"Rent rate for the refusal space, when stated. Shape follows the unit the rate was captured with: a stated dollar rate arrives as `money` with the lease's currency, and a percentage of fair market value as `percent`. A rate the lease words rather than states — most often fair market value itself — arrives as `text`, with the wording in `capturedData`. A rate the lease leaves to the landlord also arrives as `text`, with `capturedData` set to `landlordDefined`.","required":["kind"],"properties":{"kind":{"type":"string","description":"Discriminator for this shape — always `text` here.","enum":["text"],"isRequired":true,"uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.9.rentalRate.oneOf.2.kind","typeLabel":"enum\u003cstring>"},"unit":{"type":"string","description":"Unit qualifier for the value when the source text carried one (e.g. months, per square foot).","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.9.rentalRate.oneOf.2.unit","typeLabel":"string"},"capturedData":{"type":"string","description":"The value as captured during extraction, as text.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.9.rentalRate.oneOf.2.capturedData","typeLabel":"string"},"ocrText":{"type":"string","description":"Raw source text the value was extracted from.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.9.rentalRate.oneOf.2.ocrText","typeLabel":"string"},"value":{"type":"string","description":"The typed value. Its JSON type follows `kind`: a number for `number` and `percent`, a `yyyy-MM-dd` string for `date`, a decimal string for `money`, and the captured text for `text`. Omitted when `capturedData` could not be parsed into that type.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.9.rentalRate.oneOf.2.value","typeLabel":"string"}},"uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.9.rentalRate.oneOf.2","typeLabel":"text · object"}],"uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.9.rentalRate","typeLabel":"money · object | percent · object | text · object"},"expirationDateOfRight":{"oneOf":[{"type":"object","title":"number","description":"When the right of first refusal expires. Shape follows the unit it was captured with: a stated deadline arrives as `date`, and a deadline the lease states in relative terms arrives as `number` — read `unit` for what it counts. Wording that is neither arrives as `text`, and `capturedData` always holds the raw value.","required":["kind"],"properties":{"kind":{"type":"string","description":"Discriminator for this shape — always `number` here.","enum":["number"],"isRequired":true,"uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.9.expirationDateOfRight.oneOf.0.kind","typeLabel":"enum\u003cstring>"},"unit":{"type":"string","description":"Unit qualifier for the value when the source text carried one (e.g. months, per square foot).","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.9.expirationDateOfRight.oneOf.0.unit","typeLabel":"string"},"capturedData":{"type":"string","description":"The value as captured during extraction, as text.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.9.expirationDateOfRight.oneOf.0.capturedData","typeLabel":"string"},"ocrText":{"type":"string","description":"Raw source text the value was extracted from.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.9.expirationDateOfRight.oneOf.0.ocrText","typeLabel":"string"},"value":{"type":"number","description":"The typed value. Its JSON type follows `kind`: a number for `number` and `percent`, a `yyyy-MM-dd` string for `date`, a decimal string for `money`, and the captured text for `text`. Omitted when `capturedData` could not be parsed into that type.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.9.expirationDateOfRight.oneOf.0.value","typeLabel":"number"}},"uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.9.expirationDateOfRight.oneOf.0","typeLabel":"number · object"},{"type":"object","title":"date","description":"When the right of first refusal expires. Shape follows the unit it was captured with: a stated deadline arrives as `date`, and a deadline the lease states in relative terms arrives as `number` — read `unit` for what it counts. Wording that is neither arrives as `text`, and `capturedData` always holds the raw value.","required":["kind"],"properties":{"kind":{"type":"string","description":"Discriminator for this shape — always `date` here.","enum":["date"],"isRequired":true,"uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.9.expirationDateOfRight.oneOf.1.kind","typeLabel":"enum\u003cstring>"},"unit":{"type":"string","description":"Unit qualifier for the value when the source text carried one (e.g. months, per square foot).","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.9.expirationDateOfRight.oneOf.1.unit","typeLabel":"string"},"capturedData":{"type":"string","description":"The value as captured during extraction, as text.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.9.expirationDateOfRight.oneOf.1.capturedData","typeLabel":"string"},"ocrText":{"type":"string","description":"Raw source text the value was extracted from.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.9.expirationDateOfRight.oneOf.1.ocrText","typeLabel":"string"},"value":{"type":"string","description":"Present when `kind` is `date`. The captured date, `yyyy-MM-dd`. Omitted when the captured text was not parseable as a date; `capturedData` still holds what was captured.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.9.expirationDateOfRight.oneOf.1.value","typeLabel":"string"}},"uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.9.expirationDateOfRight.oneOf.1","typeLabel":"date · object"},{"type":"object","title":"text","description":"When the right of first refusal expires. Shape follows the unit it was captured with: a stated deadline arrives as `date`, and a deadline the lease states in relative terms arrives as `number` — read `unit` for what it counts. Wording that is neither arrives as `text`, and `capturedData` always holds the raw value.","required":["kind"],"properties":{"kind":{"type":"string","description":"Discriminator for this shape — always `text` here.","enum":["text"],"isRequired":true,"uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.9.expirationDateOfRight.oneOf.2.kind","typeLabel":"enum\u003cstring>"},"unit":{"type":"string","description":"Unit qualifier for the value when the source text carried one (e.g. months, per square foot).","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.9.expirationDateOfRight.oneOf.2.unit","typeLabel":"string"},"capturedData":{"type":"string","description":"The value as captured during extraction, as text.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.9.expirationDateOfRight.oneOf.2.capturedData","typeLabel":"string"},"ocrText":{"type":"string","description":"Raw source text the value was extracted from.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.9.expirationDateOfRight.oneOf.2.ocrText","typeLabel":"string"},"value":{"type":"string","description":"The typed value. Its JSON type follows `kind`: a number for `number` and `percent`, a `yyyy-MM-dd` string for `date`, a decimal string for `money`, and the captured text for `text`. Omitted when `capturedData` could not be parsed into that type.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.9.expirationDateOfRight.oneOf.2.value","typeLabel":"string"}},"uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.9.expirationDateOfRight.oneOf.2","typeLabel":"text · object"}],"uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.9.expirationDateOfRight","typeLabel":"number · object | date · object | text · object"},"refusalSpace":{"type":"array","description":"Spaces the right applies to, in the same shape as a Tag's `applicableSpaces`: suite names matched against `BuildingSpace.suiteNumber` by string, with the `Entire building` and `All spaces` sentinels for whole-building scope.","items":{"type":"object","description":"Reference to space in a Building: one Building Space suiteNumber, an entire floor, the entire Building, or all spaces. `scope` says which of those it is, and `name` carries the label — for `BUILDING` and `ALL` that label is the sentinel `Entire building` or `All spaces` rather than the name of a real Building Space. The `ALL` scope means all suites in the relevant context are referenced: a Tag with `scope: ALL` refers to every suite defined in the suiteNumber tag belonging to that Document or Lease.","properties":{"name":{"type":"string","description":"The space's display name: a suite name that matches `BuildingSpace.suiteNumber` by string (scope SUITE), a floor designation (scope FLOOR), or the sentinels `Entire building` / `All spaces`.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.9.refusalSpace.items.[INDEX].name","typeLabel":"string"},"buildingId":{"type":"string","description":"Building this entry refers to. Can differ from the parent lease's own Building when a lease spans multiple buildings or has relocated.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.9.refusalSpace.items.[INDEX].buildingId","typeLabel":"string"},"scope":{"type":"string","description":"Granularity of the reference: SUITE (one suite), FLOOR (a whole floor), BUILDING (the entire building), or ALL (all spaces).","enum":["BUILDING","FLOOR","SUITE","ALL"],"uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.9.refusalSpace.items.[INDEX].scope","typeLabel":"enum\u003cstring>"}},"uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.9.refusalSpace.items.[INDEX]","typeLabel":"object"},"uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.9.refusalSpace","typeLabel":"object[]"},"oneTimeOrOngoing":{"type":"string","description":"Whether the right can be exercised once or persists through the term, as captured. Free text rather than a fixed set of values.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.9.oneTimeOrOngoing","typeLabel":"string"},"effectivePeriod":{"type":"object","title":"dateRange","description":"Date range during which the right applies.","required":["kind"],"properties":{"kind":{"type":"string","description":"Discriminator for this shape — always `dateRange` here.","enum":["dateRange"],"isRequired":true,"uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.9.effectivePeriod.kind","typeLabel":"enum\u003cstring>"},"unit":{"type":"string","description":"Unit qualifier for the value when the source text carried one (e.g. months, per square foot).","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.9.effectivePeriod.unit","typeLabel":"string"},"capturedData":{"type":"string","description":"The value as captured during extraction, as text.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.9.effectivePeriod.capturedData","typeLabel":"string"},"ocrText":{"type":"string","description":"Raw source text the value was extracted from.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.9.effectivePeriod.ocrText","typeLabel":"string"},"start":{"type":"string","description":"Present when `kind` is `dateRange`. Inclusive start of the range, `yyyy-MM-dd`. Omitted together with `end` when `capturedData` could not be split into a parseable pair.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.9.effectivePeriod.start","typeLabel":"string"},"end":{"type":"string","description":"Present when `kind` is `dateRange`. Inclusive end of the range, `yyyy-MM-dd`. Omitted together with `start` when `capturedData` could not be split into a parseable pair.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.9.effectivePeriod.end","typeLabel":"string"}},"uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.9.effectivePeriod","typeLabel":"dateRange · object"}},"uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.9","typeLabel":"RIGHT_OF_FIRST_REFUSAL · object"},{"type":"object","title":"TENANT_IMPROVEMENT","description":"Structured detail for COMPLEX tags (options and rights). Branch on its `kind`. Null for STANDARD tags.","required":["kind"],"properties":{"kind":{"type":"string","description":"Discriminator for this shape — always `TENANT_IMPROVEMENT` here.","enum":["TENANT_IMPROVEMENT"],"isRequired":true,"uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.10.kind","typeLabel":"enum\u003cstring>"},"rightStatus":{"type":"string","description":"Status of the option/right itself. Independent of the tag record's `lifecycleStatus` — the two are resolved independently and can disagree.","enum":["AVAILABLE","EXERCISED","STRICKEN","DECLINED","EXPIRED","UNKNOWN"],"uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.10.rightStatus","typeLabel":"enum\u003cstring>"},"rightIsStricken":{"type":"string","description":"Indicator the right was stricken from the lease via a Stricken clause; see `rightStatus` for the resolved state.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.10.rightIsStricken","typeLabel":"string"},"customLabel":{"type":"string","description":"Label denoting the option family this option belongs to. Options with the same `referenceId` should also shared the same `customLabel`","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.10.customLabel","typeLabel":"string"},"effectiveDateOfRight":{"oneOf":[{"type":"object","title":"number","description":"When the current version of the right takes effect. Defaults to the parent tag's own effective date, which arrives as `date` with no `unit` because nothing was captured for it; an `\u003coption>.effectiveDateOfRight` cor tag overrides that. Shape follows the unit it was captured with: a stated deadline arrives as `date`, a period the lease measures rather than dates arrives as `number` — read `unit` for what it counts — and a window as `dateRange`.","required":["kind"],"properties":{"kind":{"type":"string","description":"Discriminator for this shape — always `number` here.","enum":["number"],"isRequired":true,"uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.10.effectiveDateOfRight.oneOf.0.kind","typeLabel":"enum\u003cstring>"},"unit":{"type":"string","description":"Unit qualifier for the value when the source text carried one (e.g. months, per square foot).","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.10.effectiveDateOfRight.oneOf.0.unit","typeLabel":"string"},"capturedData":{"type":"string","description":"The value as captured during extraction, as text.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.10.effectiveDateOfRight.oneOf.0.capturedData","typeLabel":"string"},"ocrText":{"type":"string","description":"Raw source text the value was extracted from.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.10.effectiveDateOfRight.oneOf.0.ocrText","typeLabel":"string"},"value":{"type":"number","description":"The typed value. Its JSON type follows `kind`: a number for `number` and `percent`, a `yyyy-MM-dd` string for `date`, a decimal string for `money`, and the captured text for `text`. Omitted when `capturedData` could not be parsed into that type.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.10.effectiveDateOfRight.oneOf.0.value","typeLabel":"number"}},"uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.10.effectiveDateOfRight.oneOf.0","typeLabel":"number · object"},{"type":"object","title":"date","description":"When the current version of the right takes effect. Defaults to the parent tag's own effective date, which arrives as `date` with no `unit` because nothing was captured for it; an `\u003coption>.effectiveDateOfRight` cor tag overrides that. Shape follows the unit it was captured with: a stated deadline arrives as `date`, a period the lease measures rather than dates arrives as `number` — read `unit` for what it counts — and a window as `dateRange`.","required":["kind"],"properties":{"kind":{"type":"string","description":"Discriminator for this shape — always `date` here.","enum":["date"],"isRequired":true,"uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.10.effectiveDateOfRight.oneOf.1.kind","typeLabel":"enum\u003cstring>"},"unit":{"type":"string","description":"Unit qualifier for the value when the source text carried one (e.g. months, per square foot).","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.10.effectiveDateOfRight.oneOf.1.unit","typeLabel":"string"},"capturedData":{"type":"string","description":"The value as captured during extraction, as text.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.10.effectiveDateOfRight.oneOf.1.capturedData","typeLabel":"string"},"ocrText":{"type":"string","description":"Raw source text the value was extracted from.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.10.effectiveDateOfRight.oneOf.1.ocrText","typeLabel":"string"},"value":{"type":"string","description":"Present when `kind` is `date`. The captured date, `yyyy-MM-dd`. Omitted when the captured text was not parseable as a date; `capturedData` still holds what was captured.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.10.effectiveDateOfRight.oneOf.1.value","typeLabel":"string"}},"uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.10.effectiveDateOfRight.oneOf.1","typeLabel":"date · object"},{"type":"object","title":"dateRange","description":"When the current version of the right takes effect. Defaults to the parent tag's own effective date, which arrives as `date` with no `unit` because nothing was captured for it; an `\u003coption>.effectiveDateOfRight` cor tag overrides that. Shape follows the unit it was captured with: a stated deadline arrives as `date`, a period the lease measures rather than dates arrives as `number` — read `unit` for what it counts — and a window as `dateRange`.","required":["kind"],"properties":{"kind":{"type":"string","description":"Discriminator for this shape — always `dateRange` here.","enum":["dateRange"],"isRequired":true,"uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.10.effectiveDateOfRight.oneOf.2.kind","typeLabel":"enum\u003cstring>"},"unit":{"type":"string","description":"Unit qualifier for the value when the source text carried one (e.g. months, per square foot).","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.10.effectiveDateOfRight.oneOf.2.unit","typeLabel":"string"},"capturedData":{"type":"string","description":"The value as captured during extraction, as text.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.10.effectiveDateOfRight.oneOf.2.capturedData","typeLabel":"string"},"ocrText":{"type":"string","description":"Raw source text the value was extracted from.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.10.effectiveDateOfRight.oneOf.2.ocrText","typeLabel":"string"},"start":{"type":"string","description":"Present when `kind` is `dateRange`. Inclusive start of the range, `yyyy-MM-dd`. Omitted together with `end` when `capturedData` could not be split into a parseable pair.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.10.effectiveDateOfRight.oneOf.2.start","typeLabel":"string"},"end":{"type":"string","description":"Present when `kind` is `dateRange`. Inclusive end of the range, `yyyy-MM-dd`. Omitted together with `start` when `capturedData` could not be split into a parseable pair.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.10.effectiveDateOfRight.oneOf.2.end","typeLabel":"string"}},"uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.10.effectiveDateOfRight.oneOf.2","typeLabel":"dateRange · object"},{"type":"object","title":"text","description":"When the current version of the right takes effect. Defaults to the parent tag's own effective date, which arrives as `date` with no `unit` because nothing was captured for it; an `\u003coption>.effectiveDateOfRight` cor tag overrides that. Shape follows the unit it was captured with: a stated deadline arrives as `date`, a period the lease measures rather than dates arrives as `number` — read `unit` for what it counts — and a window as `dateRange`.","required":["kind"],"properties":{"kind":{"type":"string","description":"Discriminator for this shape — always `text` here.","enum":["text"],"isRequired":true,"uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.10.effectiveDateOfRight.oneOf.3.kind","typeLabel":"enum\u003cstring>"},"unit":{"type":"string","description":"Unit qualifier for the value when the source text carried one (e.g. months, per square foot).","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.10.effectiveDateOfRight.oneOf.3.unit","typeLabel":"string"},"capturedData":{"type":"string","description":"The value as captured during extraction, as text.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.10.effectiveDateOfRight.oneOf.3.capturedData","typeLabel":"string"},"ocrText":{"type":"string","description":"Raw source text the value was extracted from.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.10.effectiveDateOfRight.oneOf.3.ocrText","typeLabel":"string"},"value":{"type":"string","description":"The typed value. Its JSON type follows `kind`: a number for `number` and `percent`, a `yyyy-MM-dd` string for `date`, a decimal string for `money`, and the captured text for `text`. Omitted when `capturedData` could not be parsed into that type.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.10.effectiveDateOfRight.oneOf.3.value","typeLabel":"string"}},"uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.10.effectiveDateOfRight.oneOf.3","typeLabel":"text · object"}],"uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.10.effectiveDateOfRight","typeLabel":"number · object | date · object | dateRange · object | text · object"},"clause":{"type":"string","description":"Some Tags capture a simple clause rather than more in-depth data, represented here when that is the case.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.10.clause","typeLabel":"string"},"amendingTag":{"type":"object","description":"The same reference the Tag carries in its own `amendingTag` — both are built from this option's `referenceId`, so reading either gives the option this one amends. Repeated here so a caller working inside `tagComponents` does not have to climb back out to the Tag.","properties":{"effectiveDate":{"type":"string","description":"Effective date of the referenced Tag — the amended option, or the parent option when this sits on a component. Not the effective date of the Tag carrying this reference.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.10.amendingTag.effectiveDate","typeLabel":"string"},"amendedTagId":{"type":"string","description":"Id the Tag's `referenceId` points at: the earlier option this one amends, or the parent option container when this sits on a component Tag.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.10.amendingTag.amendedTagId","typeLabel":"string"}},"uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.10.amendingTag","typeLabel":"object"},"componentTags":{"type":"object","additionalProperties":{"type":"object","description":"A pointer to another Tag. These are the values of a component's `componentTags` map, one per constituent tag the option or right was assembled from, keyed by the part of that tag's `tagName` after the dot. The component surfaces those tags' values on its own fields; fetch a Tag by id with the [get tag endpoint](/api-reference/v2/tags/get-tag) when you need its citations, status, or raw captured text.","properties":{"id":{"type":"string","description":"Tag Id (UUID) of the referenced tag.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.10.componentTags.additionalProperties.id","typeLabel":"string"},"displayName":{"type":"string","description":"Display name of the referenced tag.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.10.componentTags.additionalProperties.displayName","typeLabel":"string"}},"uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.10.componentTags.additionalProperties","typeLabel":"object"},"description":"References to the constituent tags this component was assembled from, keyed by component field.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.10.componentTags","typeLabel":"object"},"tiAmount":{"oneOf":[{"type":"object","title":"money","description":"Tenant-improvement allowance amount. Shape follows the unit the amount was captured with: a stated amount arrives as `money` with the lease's currency, and an amount the lease describes rather than states arrives as `text`, with the wording in `capturedData`.","required":["kind"],"properties":{"kind":{"type":"string","description":"Discriminator for this shape — always `money` here.","enum":["money"],"isRequired":true,"uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.10.tiAmount.oneOf.0.kind","typeLabel":"enum\u003cstring>"},"unit":{"type":"string","description":"Unit qualifier for the value when the source text carried one (e.g. months, per square foot).","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.10.tiAmount.oneOf.0.unit","typeLabel":"string"},"capturedData":{"type":"string","description":"The value as captured during extraction, as text.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.10.tiAmount.oneOf.0.capturedData","typeLabel":"string"},"ocrText":{"type":"string","description":"Raw source text the value was extracted from.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.10.tiAmount.oneOf.0.ocrText","typeLabel":"string"},"value":{"type":"string","description":"Present when `kind` is `money`. Decimal string (not a JSON number) holding a BigDecimal rounded to 2 decimals — preserves cent precision through JSON, e.g. \"120000.00\".","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.10.tiAmount.oneOf.0.value","typeLabel":"string"},"currency":{"type":"string","description":"Currency code for the value (e.g. USD).","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.10.tiAmount.oneOf.0.currency","typeLabel":"string"}},"uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.10.tiAmount.oneOf.0","typeLabel":"money · object"},{"type":"object","title":"text","description":"Tenant-improvement allowance amount. Shape follows the unit the amount was captured with: a stated amount arrives as `money` with the lease's currency, and an amount the lease describes rather than states arrives as `text`, with the wording in `capturedData`.","required":["kind"],"properties":{"kind":{"type":"string","description":"Discriminator for this shape — always `text` here.","enum":["text"],"isRequired":true,"uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.10.tiAmount.oneOf.1.kind","typeLabel":"enum\u003cstring>"},"unit":{"type":"string","description":"Unit qualifier for the value when the source text carried one (e.g. months, per square foot).","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.10.tiAmount.oneOf.1.unit","typeLabel":"string"},"capturedData":{"type":"string","description":"The value as captured during extraction, as text.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.10.tiAmount.oneOf.1.capturedData","typeLabel":"string"},"ocrText":{"type":"string","description":"Raw source text the value was extracted from.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.10.tiAmount.oneOf.1.ocrText","typeLabel":"string"},"value":{"type":"string","description":"The typed value. Its JSON type follows `kind`: a number for `number` and `percent`, a `yyyy-MM-dd` string for `date`, a decimal string for `money`, and the captured text for `text`. Omitted when `capturedData` could not be parsed into that type.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.10.tiAmount.oneOf.1.value","typeLabel":"string"}},"uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.10.tiAmount.oneOf.1","typeLabel":"text · object"}],"uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.10.tiAmount","typeLabel":"money · object | text · object"},"tiRemaining":{"type":"object","title":"text","description":"Allowance still unspent, as the lease states it. Always `text`: this term is captured as free wording, and `capturedData` holds the raw value.","required":["kind"],"properties":{"kind":{"type":"string","description":"Discriminator for this shape — always `text` here.","enum":["text"],"isRequired":true,"uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.10.tiRemaining.kind","typeLabel":"enum\u003cstring>"},"unit":{"type":"string","description":"Unit qualifier for the value when the source text carried one (e.g. months, per square foot).","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.10.tiRemaining.unit","typeLabel":"string"},"capturedData":{"type":"string","description":"The value as captured during extraction, as text.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.10.tiRemaining.capturedData","typeLabel":"string"},"ocrText":{"type":"string","description":"Raw source text the value was extracted from.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.10.tiRemaining.ocrText","typeLabel":"string"},"value":{"type":"string","description":"The typed value. Its JSON type follows `kind`: a number for `number` and `percent`, a `yyyy-MM-dd` string for `date`, a decimal string for `money`, and the captured text for `text`. Omitted when `capturedData` could not be parsed into that type.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.10.tiRemaining.value","typeLabel":"string"}},"uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.10.tiRemaining","typeLabel":"text · object"},"tiSunset":{"oneOf":[{"type":"object","title":"number","description":"Point after which any unspent allowance is forfeited. A stated duration arrives as `number` with its unit, a stated deadline as `date`.","required":["kind"],"properties":{"kind":{"type":"string","description":"Discriminator for this shape — always `number` here.","enum":["number"],"isRequired":true,"uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.10.tiSunset.oneOf.0.kind","typeLabel":"enum\u003cstring>"},"unit":{"type":"string","description":"Unit qualifier for the value when the source text carried one (e.g. months, per square foot).","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.10.tiSunset.oneOf.0.unit","typeLabel":"string"},"capturedData":{"type":"string","description":"The value as captured during extraction, as text.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.10.tiSunset.oneOf.0.capturedData","typeLabel":"string"},"ocrText":{"type":"string","description":"Raw source text the value was extracted from.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.10.tiSunset.oneOf.0.ocrText","typeLabel":"string"},"value":{"type":"number","description":"The typed value. Its JSON type follows `kind`: a number for `number` and `percent`, a `yyyy-MM-dd` string for `date`, a decimal string for `money`, and the captured text for `text`. Omitted when `capturedData` could not be parsed into that type.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.10.tiSunset.oneOf.0.value","typeLabel":"number"}},"uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.10.tiSunset.oneOf.0","typeLabel":"number · object"},{"type":"object","title":"date","description":"Point after which any unspent allowance is forfeited. A stated duration arrives as `number` with its unit, a stated deadline as `date`.","required":["kind"],"properties":{"kind":{"type":"string","description":"Discriminator for this shape — always `date` here.","enum":["date"],"isRequired":true,"uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.10.tiSunset.oneOf.1.kind","typeLabel":"enum\u003cstring>"},"unit":{"type":"string","description":"Unit qualifier for the value when the source text carried one (e.g. months, per square foot).","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.10.tiSunset.oneOf.1.unit","typeLabel":"string"},"capturedData":{"type":"string","description":"The value as captured during extraction, as text.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.10.tiSunset.oneOf.1.capturedData","typeLabel":"string"},"ocrText":{"type":"string","description":"Raw source text the value was extracted from.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.10.tiSunset.oneOf.1.ocrText","typeLabel":"string"},"value":{"type":"string","description":"Present when `kind` is `date`. The captured date, `yyyy-MM-dd`. Omitted when the captured text was not parseable as a date; `capturedData` still holds what was captured.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.10.tiSunset.oneOf.1.value","typeLabel":"string"}},"uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.10.tiSunset.oneOf.1","typeLabel":"date · object"},{"type":"object","title":"text","description":"Point after which any unspent allowance is forfeited. A stated duration arrives as `number` with its unit, a stated deadline as `date`.","required":["kind"],"properties":{"kind":{"type":"string","description":"Discriminator for this shape — always `text` here.","enum":["text"],"isRequired":true,"uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.10.tiSunset.oneOf.2.kind","typeLabel":"enum\u003cstring>"},"unit":{"type":"string","description":"Unit qualifier for the value when the source text carried one (e.g. months, per square foot).","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.10.tiSunset.oneOf.2.unit","typeLabel":"string"},"capturedData":{"type":"string","description":"The value as captured during extraction, as text.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.10.tiSunset.oneOf.2.capturedData","typeLabel":"string"},"ocrText":{"type":"string","description":"Raw source text the value was extracted from.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.10.tiSunset.oneOf.2.ocrText","typeLabel":"string"},"value":{"type":"string","description":"The typed value. Its JSON type follows `kind`: a number for `number` and `percent`, a `yyyy-MM-dd` string for `date`, a decimal string for `money`, and the captured text for `text`. Omitted when `capturedData` could not be parsed into that type.","uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.10.tiSunset.oneOf.2.value","typeLabel":"string"}},"uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.10.tiSunset.oneOf.2","typeLabel":"text · object"}],"uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.10.tiSunset","typeLabel":"number · object | date · object | text · object"}},"uniqueKey":"tags.items.[INDEX].tagComponents.oneOf.10","typeLabel":"TENANT_IMPROVEMENT · object"}],"uniqueKey":"tags.items.[INDEX].tagComponents","typeLabel":"AUTO_RENEWAL · object | CONTRACTION · object | EARLY_TERMINATION · object | EXPANSION · object | FEE · object | OTHER · object | PURCHASE · object | RENEWAL · object | RIGHT_OF_FIRST_OFFER · object | RIGHT_OF_FIRST_REFUSAL · object | TENANT_IMPROVEMENT · object"},"amendingTag":{"type":"object","description":"Present when this tag amends/supersedes an earlier tag (its DB reference_id / OPTION option-group anchor). `amendedTagId` is the earlier (amended) tag's id; this is populated for any tag carrying a reference, not just OPTION/complex tags. For OPTION tags the same pointer is also mirrored inside tagComponents.amendingTag.","properties":{"effectiveDate":{"type":"string","description":"Effective date of the referenced Tag — the amended option, or the parent option when this sits on a component. Not the effective date of the Tag carrying this reference.","uniqueKey":"tags.items.[INDEX].amendingTag.effectiveDate","typeLabel":"string"},"amendedTagId":{"type":"string","description":"Id the Tag's `referenceId` points at: the earlier option this one amends, or the parent option container when this sits on a component Tag.","uniqueKey":"tags.items.[INDEX].amendingTag.amendedTagId","typeLabel":"string"}},"uniqueKey":"tags.items.[INDEX].amendingTag","typeLabel":"object"},"lifecycleStatus":{"type":"string","description":"State of this tag record across the lease's document history. Distinct from a component's `rightStatus` — the two are resolved independently and can disagree. Typically this lifecycle status refers to individual STANDARD tags or tagComponents.","enum":["ACTIVE","VOID","STRICKEN","EXERCISED"],"uniqueKey":"tags.items.[INDEX].lifecycleStatus","typeLabel":"enum\u003cstring>"},"leaseId":{"type":"string","description":"Lease this tag belongs to.","uniqueKey":"tags.items.[INDEX].leaseId","typeLabel":"string"},"leaseDocId":{"type":"string","description":"Document this tag was extracted from.","uniqueKey":"tags.items.[INDEX].leaseDocId","typeLabel":"string"},"createdAt":{"type":"string","format":"date-time","description":"When the tag was created.","uniqueKey":"tags.items.[INDEX].createdAt","typeLabel":"string\u003cdate-time>"},"updatedAt":{"type":"string","format":"date-time","description":"When the tag was last modified.","uniqueKey":"tags.items.[INDEX].updatedAt","typeLabel":"string\u003cdate-time>"},"url":{"type":"string","description":"Deep link to this tag in the Prophia web app.","uniqueKey":"tags.items.[INDEX].url","typeLabel":"string"}},"uniqueKey":"tags.items.[INDEX]","typeLabel":"object"},"uniqueKey":"tags","typeLabel":"object[]"},"documents":{"type":"object","additionalProperties":{"type":"object","description":"The pages of a single document. Appears as the values of a lease's or loan's `documents` map, which is keyed by document id, so `documents[documentId].pages[docPageId]` resolves a tag citation to the page it sits on and the dimensions its bounding boxes scale against.","properties":{"pages":{"type":"object","additionalProperties":{"type":"object","properties":{"id":{"type":"string","description":"Document page id; matches `tagSelections[].docPageId`.","uniqueKey":"documents.additionalProperties.pages.additionalProperties.id","typeLabel":"string"},"pageSequence":{"type":"integer","format":"int32","description":"Position of the page within its document.","uniqueKey":"documents.additionalProperties.pages.additionalProperties.pageSequence","typeLabel":"integer\u003cint32>"},"width":{"type":"integer","format":"int32","description":"Page width in the OCR pipeline's native units (typically pixels). Scale a tag citation onto this page with `pixel_x = boundingBox.x * width / 10000`.","uniqueKey":"documents.additionalProperties.pages.additionalProperties.width","typeLabel":"integer\u003cint32>"},"height":{"type":"integer","format":"int32","description":"Page height in the OCR pipeline's native units (typically pixels). Scale a tag citation onto this page with `pixel_y = boundingBox.y * height / 10000`.","uniqueKey":"documents.additionalProperties.pages.additionalProperties.height","typeLabel":"integer\u003cint32>"}},"uniqueKey":"documents.additionalProperties.pages.additionalProperties","typeLabel":"object"},"description":"Page geometry keyed by document page id — the value a tag citation carries in `tagSelections[].docPageId`. The page's own `id` field is omitted here because the id is the key; under a tag's `pages` include the same model carries `id` instead.","uniqueKey":"documents.additionalProperties.pages","typeLabel":"object"}},"uniqueKey":"documents.additionalProperties","typeLabel":"object"},"description":"Per-document page geometry keyed by leaseDocId, for resolving tag citations; only populated when `include=documents` is present in the request parameters.","readOnly":true,"uniqueKey":"documents","typeLabel":"object"},"leaseScore":{"type":"object","properties":{"score":{"type":"integer","format":"int32","description":"Prophia's complexity score for the lease's extracted record.","uniqueKey":"leaseScore.score","typeLabel":"integer\u003cint32>"},"missingMLA":{"type":"boolean","description":"True when no primary Agreement (usually a Main Lease Agreement) document has been identified for the lease.","uniqueKey":"leaseScore.missingMLA","typeLabel":"boolean"}},"description":"Prophia's computed Lease complexity score. Takes into account number and type of documents, tag data changes over time, and more.","readOnly":true,"uniqueKey":"leaseScore","typeLabel":"object"},"parent":{"type":"object","description":"Parent Lease, present only if this Lease is a sublease.","properties":{"id":{"type":"string","description":"The Lease id (UUID) of the referenced Lease.","uniqueKey":"parent.id","typeLabel":"string"},"url":{"type":"string","description":"Deep link to this Lease in the Prophia web app.","uniqueKey":"parent.url","typeLabel":"string"},"leaseStatus":{"type":"string","description":"Current [`leaseStatus`](/api-reference/v2/leases/get-lease#response-lease-status) of the referenced lease, when available.","uniqueKey":"parent.leaseStatus","typeLabel":"string"},"leaseSubStatus":{"type":"object","description":"Current [`leaseSubStatus`](/api-reference/v2/leases/get-lease#response-lease-sub-status) of the referenced lease, when one applies.","properties":{"status":{"type":"string","description":"The sub-status that currently applies to the lease.","enum":["MONTH_TO_MONTH","YEAR_TO_YEAR","HOLDOVER","VACATED","EXTENDED"],"uniqueKey":"parent.leaseSubStatus.status","typeLabel":"enum\u003cstring>"},"startDate":{"type":"string","format":"date-time","description":"Date the lease entered this sub-status, when known.","uniqueKey":"parent.leaseSubStatus.startDate","typeLabel":"string\u003cdate-time>"}},"uniqueKey":"parent.leaseSubStatus","typeLabel":"object"}},"readOnly":true,"uniqueKey":"parent","typeLabel":"object"},"leaseSubStatus":{"type":"object","description":"Refines leaseStatus with the lease's current ongoing state (month-to-month, year-to-year, holdover) or post-expiration transition (vacated, extended). Omitted when none applies.","properties":{"status":{"type":"string","description":"The sub-status that currently applies to the lease.","enum":["MONTH_TO_MONTH","YEAR_TO_YEAR","HOLDOVER","VACATED","EXTENDED"],"uniqueKey":"leaseSubStatus.status","typeLabel":"enum\u003cstring>"},"startDate":{"type":"string","format":"date-time","description":"Date the lease entered this sub-status, when known.","uniqueKey":"leaseSubStatus.startDate","typeLabel":"string\u003cdate-time>"}},"readOnly":true,"uniqueKey":"leaseSubStatus","typeLabel":"object"},"docCompletionStatus":{"type":"string","description":"Doc-completion rollup for the lease summary; `complete` when all Documents in the Lease have `documentStatus=complete`, otherwise `incomplete`.","readOnly":true,"uniqueKey":"docCompletionStatus","typeLabel":"string"},"rentType":{"type":"string","description":"Top-level rent classification for the lease (e.g. NNN, Gross). See `opexTaxTypes` for per-space classifications, which fall back to this value.","enum":["Gross","Modified Gross","Single Net","NNN","Net of E","NN","Net","Unknown"],"readOnly":true,"uniqueKey":"rentType","typeLabel":"enum\u003cstring>"},"opexTaxTypes":{"type":"array","description":"Per-occupied-space operating-expense / tax type, falling back to rentType when no per-space mapping exists.","items":{"type":"object","description":"Operating-expense / tax recovery classification for a single occupied Building Space. Falls back to the lease-level rentType when no explicit per-space mapping exists.","properties":{"space":{"type":"object","description":"Space (suite/floor) this classification applies to.","properties":{"name":{"type":"string","description":"The space's display name: a suite name that matches `BuildingSpace.suiteNumber` by string (scope SUITE), a floor designation (scope FLOOR), or the sentinels `Entire building` / `All spaces`.","uniqueKey":"opexTaxTypes.items.[INDEX].space.name","typeLabel":"string"},"buildingId":{"type":"string","description":"Building this entry refers to. Can differ from the parent lease's own Building when a lease spans multiple buildings or has relocated.","uniqueKey":"opexTaxTypes.items.[INDEX].space.buildingId","typeLabel":"string"},"scope":{"type":"string","description":"Granularity of the reference: SUITE (one suite), FLOOR (a whole floor), BUILDING (the entire building), or ALL (all spaces).","enum":["BUILDING","FLOOR","SUITE","ALL"],"uniqueKey":"opexTaxTypes.items.[INDEX].space.scope","typeLabel":"enum\u003cstring>"}},"uniqueKey":"opexTaxTypes.items.[INDEX].space","typeLabel":"object"},"opexTaxType":{"type":"string","description":"Opex / tax type label (e.g. NNN, Gross). Resolved from the lease's per-space mapping; rentType is used as a fallback.","enum":["Gross","Modified Gross","Single Net","NNN","Net of E","NN","Net","Unknown"],"uniqueKey":"opexTaxTypes.items.[INDEX].opexTaxType","typeLabel":"enum\u003cstring>"}},"uniqueKey":"opexTaxTypes.items.[INDEX]","typeLabel":"object"},"readOnly":true,"uniqueKey":"opexTaxTypes","typeLabel":"object[]"},"floatingCommencement":{"type":"boolean","description":"True when the lease's commencement date is floating (not anchored to a fixed calendar date).","readOnly":true,"uniqueKey":"floatingCommencement","typeLabel":"boolean"},"autoRenewalExpirationDates":{"type":"array","description":"Per-space future expiration dates from auto-renewal options; excludes each space's pre-auto-renewal (original) expiration.","items":{"type":"object","description":"Future expiration dates that arise from auto-renewal options on a single space. Excludes the lease's own current expiration date.","properties":{"space":{"type":"object","description":"Space the auto-renewal expirations apply to. The data in this model can be referenced to Building Spaces.","properties":{"name":{"type":"string","description":"The space's display name: a suite name that matches `BuildingSpace.suiteNumber` by string (scope SUITE), a floor designation (scope FLOOR), or the sentinels `Entire building` / `All spaces`.","uniqueKey":"autoRenewalExpirationDates.items.[INDEX].space.name","typeLabel":"string"},"buildingId":{"type":"string","description":"Building this entry refers to. Can differ from the parent lease's own Building when a lease spans multiple buildings or has relocated.","uniqueKey":"autoRenewalExpirationDates.items.[INDEX].space.buildingId","typeLabel":"string"},"scope":{"type":"string","description":"Granularity of the reference: SUITE (one suite), FLOOR (a whole floor), BUILDING (the entire building), or ALL (all spaces).","enum":["BUILDING","FLOOR","SUITE","ALL"],"uniqueKey":"autoRenewalExpirationDates.items.[INDEX].space.scope","typeLabel":"enum\u003cstring>"}},"uniqueKey":"autoRenewalExpirationDates.items.[INDEX].space","typeLabel":"object"},"dates":{"type":"array","description":"Ordered list of future expiration dates for the space built from applying captured auto-renewal periods to the Lease's original expiration date.","items":{"type":"string","format":"date-time","uniqueKey":"autoRenewalExpirationDates.items.[INDEX].dates.items.[INDEX]","typeLabel":"string\u003cdate-time>"},"uniqueKey":"autoRenewalExpirationDates.items.[INDEX].dates","typeLabel":"string\u003cdate-time>[]"}},"uniqueKey":"autoRenewalExpirationDates.items.[INDEX]","typeLabel":"object"},"readOnly":true,"uniqueKey":"autoRenewalExpirationDates","typeLabel":"object[]"},"subleases":{"type":"array","description":"Subleases under this Lease, only populated when the `include=subleases` is present in the request parameters.","items":{"type":"object","description":"Lightweight reference to another lease (e.g. the parent lease of a sublease, or a sublease of a primary lease). When the referenced lease's consolidated summary is available, leaseStatus and leaseSubStatus reflect its current derived state.","properties":{"id":{"type":"string","description":"The Lease id (UUID) of the referenced Lease.","uniqueKey":"subleases.items.[INDEX].id","typeLabel":"string"},"url":{"type":"string","description":"Deep link to this Lease in the Prophia web app.","uniqueKey":"subleases.items.[INDEX].url","typeLabel":"string"},"leaseStatus":{"type":"string","description":"Current [`leaseStatus`](/api-reference/v2/leases/get-lease#response-lease-status) of the referenced lease, when available.","uniqueKey":"subleases.items.[INDEX].leaseStatus","typeLabel":"string"},"leaseSubStatus":{"type":"object","description":"Current [`leaseSubStatus`](/api-reference/v2/leases/get-lease#response-lease-sub-status) of the referenced lease, when one applies.","properties":{"status":{"type":"string","description":"The sub-status that currently applies to the lease.","enum":["MONTH_TO_MONTH","YEAR_TO_YEAR","HOLDOVER","VACATED","EXTENDED"],"uniqueKey":"subleases.items.[INDEX].leaseSubStatus.status","typeLabel":"enum\u003cstring>"},"startDate":{"type":"string","format":"date-time","description":"Date the lease entered this sub-status, when known.","uniqueKey":"subleases.items.[INDEX].leaseSubStatus.startDate","typeLabel":"string\u003cdate-time>"}},"uniqueKey":"subleases.items.[INDEX].leaseSubStatus","typeLabel":"object"}},"uniqueKey":"subleases.items.[INDEX]","typeLabel":"object"},"readOnly":true,"uniqueKey":"subleases","typeLabel":"object[]"}},"uniqueKey":"","typeLabel":"object"},"examples":{"Example":{"title":"Example","value":{"id":"\u003cstring>","accountId":"\u003cstring>","propertyId":"\u003cstring>","propertyCustomId":"\u003cstring>","propertyName":"\u003cstring>","buildingId":"\u003cstring>","buildingCustomId":"\u003cstring>","buildingName":"\u003cstring>","buildingType":"OFFICE","address":{"address1":"\u003cstring>","address2":"\u003cstring>","city":"\u003cstring>","state":"\u003cstring>","country":"\u003cstring>","zipcode":"\u003cstring>"},"tenantLegalName":"\u003cstring>","dba":"\u003cstring>","customId":"\u003cstring>","url":"\u003cstring>","leaseStatus":"\u003cstring>","leaseType":"OFFICE","leasedFloors":"\u003cstring>","suiteNumber":[{"name":"\u003cstring>","buildingId":"\u003cstring>","scope":"BUILDING"}],"squareFootage":123,"commenceDate":"2023-11-07T05:31:56Z","expirationDate":"2023-11-07T05:31:56Z","tags":[{"id":"\u003cstring>","tagName":"\u003cstring>","displayName":"\u003cstring>","isCustomTag":true,"category":"STANDARD","value":{"kind":"date","unit":"\u003cstring>","capturedData":"\u003cstring>","ocrText":"\u003cstring>","value":"\u003cstring>"},"customValue1":"\u003cstring>","customValue2":"\u003cstring>","customValue3":"\u003cstring>","customValue4":"\u003cstring>","customValue5":"\u003cstring>","customValue6":"\u003cstring>","schedule":{"kind":"RENT","entries":[{"sequence":123,"startDate":"\u003cstring>","endDate":"\u003cstring>","startMonth":123,"endMonth":123,"squareFootage":123,"baseRent":{"kind":"money","unit":"\u003cstring>","capturedData":"\u003cstring>","ocrText":"\u003cstring>","value":"\u003cstring>","currency":"\u003cstring>"},"fixedRETaxes":{"kind":"money","unit":"\u003cstring>","capturedData":"\u003cstring>","ocrText":"\u003cstring>","value":"\u003cstring>","currency":"\u003cstring>"},"fixedOpex":{"kind":"money","unit":"\u003cstring>","capturedData":"\u003cstring>","ocrText":"\u003cstring>","value":"\u003cstring>","currency":"\u003cstring>"},"fixedParking":{"kind":"money","unit":"\u003cstring>","capturedData":"\u003cstring>","ocrText":"\u003cstring>","value":"\u003cstring>","currency":"\u003cstring>"},"annualTiRent":{"kind":"money","unit":"\u003cstring>","capturedData":"\u003cstring>","ocrText":"\u003cstring>","value":"\u003cstring>","currency":"\u003cstring>"},"annualBsacRent":{"kind":"money","unit":"\u003cstring>","capturedData":"\u003cstring>","ocrText":"\u003cstring>","value":"\u003cstring>","currency":"\u003cstring>"},"cpiIncreaseAmount":{"kind":"money","unit":"\u003cstring>","capturedData":"\u003cstring>","ocrText":"\u003cstring>","value":"\u003cstring>","currency":"\u003cstring>"}}]},"tagComponents":{"kind":"AUTO_RENEWAL","rightStatus":"AVAILABLE","rightIsStricken":"\u003cstring>","customLabel":"\u003cstring>","effectiveDateOfRight":{"kind":"number","unit":"\u003cstring>","capturedData":"\u003cstring>","ocrText":"\u003cstring>","value":123},"clause":"\u003cstring>","amendingTag":{"effectiveDate":"\u003cstring>","amendedTagId":"\u003cstring>"},"componentTags":{},"advancedNoticePeriod":{"kind":"number","unit":"\u003cstring>","capturedData":"\u003cstring>","ocrText":"\u003cstring>","value":123},"autoRenewalTerm":{"kind":"number","unit":"\u003cstring>","capturedData":"\u003cstring>","ocrText":"\u003cstring>","value":123},"autoRenewalPeriods":{"kind":"number","unit":"\u003cstring>","capturedData":"\u003cstring>","ocrText":"\u003cstring>","value":123},"autoRenewalRate":{"kind":"money","unit":"\u003cstring>","capturedData":"\u003cstring>","ocrText":"\u003cstring>","value":"\u003cstring>","currency":"\u003cstring>"},"autoRenewalRateBump":{"kind":"percent","unit":"\u003cstring>","capturedData":"\u003cstring>","ocrText":"\u003cstring>","value":123},"effectivePeriod":{"kind":"dateRange","unit":"\u003cstring>","capturedData":"\u003cstring>","ocrText":"\u003cstring>","start":"\u003cstring>","end":"\u003cstring>"}},"amendingTag":{"effectiveDate":"\u003cstring>","amendedTagId":"\u003cstring>"},"lifecycleStatus":"ACTIVE","leaseId":"\u003cstring>","leaseDocId":"\u003cstring>","createdAt":"2023-11-07T05:31:56Z","updatedAt":"2023-11-07T05:31:56Z","url":"\u003cstring>"}],"documents":{},"leaseScore":{"score":123,"missingMLA":true},"parent":{"id":"\u003cstring>","url":"\u003cstring>","leaseStatus":"\u003cstring>","leaseSubStatus":{"status":"MONTH_TO_MONTH","startDate":"2023-11-07T05:31:56Z"}},"leaseSubStatus":{"status":"MONTH_TO_MONTH","startDate":"2023-11-07T05:31:56Z"},"docCompletionStatus":"\u003cstring>","rentType":"Gross","opexTaxTypes":[{"space":{"name":"\u003cstring>","buildingId":"\u003cstring>","scope":"BUILDING"},"opexTaxType":"Gross"}],"floatingCommencement":true,"autoRenewalExpirationDates":[{"space":{"name":"\u003cstring>","buildingId":"\u003cstring>","scope":"BUILDING"},"dates":["2023-11-07T05:31:56Z"]}],"subleases":[{"id":"\u003cstring>","url":"\u003cstring>","leaseStatus":"\u003cstring>","leaseSubStatus":{"status":"MONTH_TO_MONTH","startDate":"2023-11-07T05:31:56Z"}}]}}},"exampleType":"generated"}},"exampleType":"generated"},"c0322d7e-c8fa-4c6d-9355-998c11635fba":{"description":"Invalid input — for example an unknown `include` key or a malformed parameter value","content":{"application/json":{"schema":{"type":"object","properties":{"error":{"type":"string","description":"Stable error category","example":"Invalid Input","uniqueKey":"error","typeLabel":"string"},"errorCode":{"type":"string","description":"Stable error code suitable for programmatic handling","example":"InvalidInput","uniqueKey":"errorCode","typeLabel":"string"},"message":{"type":"string","description":"Human-readable detail; may aggregate multiple field errors","uniqueKey":"message","typeLabel":"string"},"status":{"type":"string","description":"HTTP status of the response as code and reason phrase, matching the response's own status line","example":"404 NOT_FOUND","uniqueKey":"status","typeLabel":"string"},"timestamp":{"type":"string","format":"date-time","description":"When the error was produced, as an ISO-8601 UTC instant","example":"2026-09-02T20:41:03.118Z","uniqueKey":"timestamp","typeLabel":"string\u003cdate-time>"},"localizedMessage":{"type":"string","description":"Same text as `message`; present because the body is a serialized exception. Prefer `message`","uniqueKey":"localizedMessage","typeLabel":"string"}},"uniqueKey":"","typeLabel":"object"},"example":{"error":"Invalid Input","errorCode":"InvalidInput","message":"Unknown include keys: [bogus]; supported: [tags, documents, subleases]","status":"400 BAD_REQUEST","timestamp":"2026-09-02T20:41:03.118Z","localizedMessage":"Unknown include keys: [bogus]; supported: [tags, documents, subleases]"},"examples":{"Example":{"title":"Example","value":{"error":"Invalid Input","errorCode":"InvalidInput","message":"Unknown include keys: [bogus]; supported: [tags, documents, subleases]","status":"400 BAD_REQUEST","timestamp":"2026-09-02T20:41:03.118Z","localizedMessage":"Unknown include keys: [bogus]; supported: [tags, documents, subleases]"}}},"exampleType":"examples"}},"exampleType":"examples"},"2b5e7126-2b2a-4486-b2c1-c9382f1fd5b1":{"description":"The credential was rejected before the request reached the endpoint — for example a JWT was presented where an API key is required. Only `error` is populated on this path","content":{"application/json":{"schema":{"type":"object","properties":{"error":{"type":"string","description":"Stable error category","example":"Invalid Input","uniqueKey":"error","typeLabel":"string"},"errorCode":{"type":"string","description":"Stable error code suitable for programmatic handling","example":"InvalidInput","uniqueKey":"errorCode","typeLabel":"string"},"message":{"type":"string","description":"Human-readable detail; may aggregate multiple field errors","uniqueKey":"message","typeLabel":"string"},"status":{"type":"string","description":"HTTP status of the response as code and reason phrase, matching the response's own status line","example":"404 NOT_FOUND","uniqueKey":"status","typeLabel":"string"},"timestamp":{"type":"string","format":"date-time","description":"When the error was produced, as an ISO-8601 UTC instant","example":"2026-09-02T20:41:03.118Z","uniqueKey":"timestamp","typeLabel":"string\u003cdate-time>"},"localizedMessage":{"type":"string","description":"Same text as `message`; present because the body is a serialized exception. Prefer `message`","uniqueKey":"localizedMessage","typeLabel":"string"}},"uniqueKey":"","typeLabel":"object"},"example":{"error":"JWT authentication is not supported. Use an API key."},"examples":{"Example":{"title":"Example","value":{"error":"JWT authentication is not supported. Use an API key."}}},"exampleType":"examples"}},"exampleType":"examples"},"29f02358-85a8-4d04-bff0-e0fcfa595851":{"description":"The API key is valid but lacks a required capability, or its building permissions do not cover the requested resource. The message names the missing capabilities only in the former case","content":{"application/json":{"schema":{"type":"object","properties":{"error":{"type":"string","description":"Stable error category","example":"Invalid Input","uniqueKey":"error","typeLabel":"string"},"errorCode":{"type":"string","description":"Stable error code suitable for programmatic handling","example":"InvalidInput","uniqueKey":"errorCode","typeLabel":"string"},"message":{"type":"string","description":"Human-readable detail; may aggregate multiple field errors","uniqueKey":"message","typeLabel":"string"},"status":{"type":"string","description":"HTTP status of the response as code and reason phrase, matching the response's own status line","example":"404 NOT_FOUND","uniqueKey":"status","typeLabel":"string"},"timestamp":{"type":"string","format":"date-time","description":"When the error was produced, as an ISO-8601 UTC instant","example":"2026-09-02T20:41:03.118Z","uniqueKey":"timestamp","typeLabel":"string\u003cdate-time>"},"localizedMessage":{"type":"string","description":"Same text as `message`; present because the body is a serialized exception. Prefer `message`","uniqueKey":"localizedMessage","typeLabel":"string"}},"uniqueKey":"","typeLabel":"object"},"example":{"error":"Access Denied","errorCode":"AccessDenied","message":"Not authorized. Missing capabilities: READ:TAG","status":"403 FORBIDDEN","timestamp":"2026-09-02T20:41:03.118Z","localizedMessage":"Not authorized. Missing capabilities: READ:TAG"},"examples":{"Example":{"title":"Example","value":{"error":"Access Denied","errorCode":"AccessDenied","message":"Not authorized. Missing capabilities: READ:TAG","status":"403 FORBIDDEN","timestamp":"2026-09-02T20:41:03.118Z","localizedMessage":"Not authorized. Missing capabilities: READ:TAG"}}},"exampleType":"examples"}},"exampleType":"examples"},"6b3c06f7-3e4a-41fe-8822-99203f562518":{"description":"No such resource is visible to the account named in the path","content":{"application/json":{"schema":{"type":"object","properties":{"error":{"type":"string","description":"Stable error category","example":"Invalid Input","uniqueKey":"error","typeLabel":"string"},"errorCode":{"type":"string","description":"Stable error code suitable for programmatic handling","example":"InvalidInput","uniqueKey":"errorCode","typeLabel":"string"},"message":{"type":"string","description":"Human-readable detail; may aggregate multiple field errors","uniqueKey":"message","typeLabel":"string"},"status":{"type":"string","description":"HTTP status of the response as code and reason phrase, matching the response's own status line","example":"404 NOT_FOUND","uniqueKey":"status","typeLabel":"string"},"timestamp":{"type":"string","format":"date-time","description":"When the error was produced, as an ISO-8601 UTC instant","example":"2026-09-02T20:41:03.118Z","uniqueKey":"timestamp","typeLabel":"string\u003cdate-time>"},"localizedMessage":{"type":"string","description":"Same text as `message`; present because the body is a serialized exception. Prefer `message`","uniqueKey":"localizedMessage","typeLabel":"string"}},"uniqueKey":"","typeLabel":"object"},"example":{"error":"Entity Not Found","errorCode":"EntityNotFound","message":"This entity is not found in the system.","status":"404 NOT_FOUND","timestamp":"2026-09-02T20:41:03.118Z","localizedMessage":"This entity is not found in the system."},"examples":{"Example":{"title":"Example","value":{"error":"Entity Not Found","errorCode":"EntityNotFound","message":"This entity is not found in the system.","status":"404 NOT_FOUND","timestamp":"2026-09-02T20:41:03.118Z","localizedMessage":"This entity is not found in the system."}}},"exampleType":"examples"}},"exampleType":"examples"}},"security":{"a4b573e8-9e27-4cda-bbfc-fe4bf588b6a5":{"apiKey":{"type":"apiKey","description":"Prophia API key — either an account key (grants admin level permissions) or a user key with the REST scope. Send it in the `X-API-Key` header, or equivalently as `Authorization: Bearer \u003capi-key>`. JWTs are rejected on /rest endpoints with 401.","name":"X-API-Key","in":"header","scopes":[],"schemeName":"apiKey"}}},"servers":{"ac2c6829-ec34-4f73-950d-564389c250a7":{"url":"https://api.prophia.com","description":"Prophia API"}},"processedSecurityOptions":[{"schemes":[{"scheme":{"type":"apiKey","description":"Prophia API key — either an account key (grants admin level permissions) or a user key with the REST scope. Send it in the `X-API-Key` header, or equivalently as `Authorization: Bearer \u003capi-key>`. JWTs are rejected on /rest endpoints with 401.","name":"X-API-Key","in":"header","scopes":[],"schemeName":"apiKey"},"schema":{"title":"X-API-Key","type":"string","description":"Prophia API key — either an account key (grants admin level permissions) or a user key with the REST scope. Send it in the `X-API-Key` header, or equivalently as `Authorization: Bearer \u003capi-key>`. JWTs are rejected on /rest endpoints with 401.","isRequired":true,"typeLabel":"string","deprecated":false},"schemeName":"apiKey","name":"X-API-Key"}],"title":"apiKey"}]},"originalFileLocation":"api-reference/openapi.json"},"subdomain":"prophia","siteName":"Prophia Docs","title":"GET Lease - Prophia Docs","navMaps":{"firstHrefInVersion":{"v2":{"href":"/api-reference/v2/leases/get-lease","matchLevel":0},"v1 (deprecated)":{"href":"/api-reference/v1/leases/get-lease","matchLevel":1}},"firstHrefInLanguage":{}},"lastModified":"2026-11-04T18:01:19.002Z","originalFileLocation":"api-reference/v2/leases/get-lease.mdx"},"headHtml":"\u003cscript data-mint-head>(function(){var d=document.documentElement,p=null;if(!p){try{p=localStorage.getItem(\"isDarkMode\")}catch(e){}if(p==='true')p='dark';else if(p==='false')p='light';if(p!=='light'\u0026\u0026p!=='dark'\u0026\u0026p!=='system')p=\"system\"}var r=p==='system'?(matchMedia(\"(prefers-color-scheme: dark)\").matches?'dark':'light'):p;d.classList.remove(r==='dark'?'light':'dark');d.classList.add(r);d.setAttribute(\"data-theme-preference\",p)})();\u003c/script>\u003cmeta data-mint-head name=\"description\" content=\"Returns a single Lease by id. Required capabilities: READ:LEASE\">\u003cmeta data-mint-head name=\"application-name\" content=\"Prophia Docs\">\u003cmeta data-mint-head name=\"generator\" content=\"Mintlify\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"192x192\" href=\"/mintlify-assets/_mintlify/favicons/prophia/gMArIoMD4H40C8Fk/_generated/favicon/android-chrome-192x192.png\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"apple-touch-icon\" type=\"image/png\" sizes=\"180x180\" href=\"/mintlify-assets/_mintlify/favicons/prophia/gMArIoMD4H40C8Fk/_generated/favicon/apple-touch-icon.png\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"16x16\" href=\"/mintlify-assets/_mintlify/favicons/prophia/gMArIoMD4H40C8Fk/_generated/favicon/favicon-16x16.png\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"32x32\" href=\"/mintlify-assets/_mintlify/favicons/prophia/gMArIoMD4H40C8Fk/_generated/favicon/favicon-32x32.png\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"shortcut icon\" type=\"image/x-icon\" href=\"/mintlify-assets/_mintlify/favicons/prophia/gMArIoMD4H40C8Fk/_generated/favicon/favicon.ico\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"192x192\" href=\"/mintlify-assets/_mintlify/favicons/prophia/gMArIoMD4H40C8Fk/_generated/favicon-dark/android-chrome-192x192.png\" media=\"(prefers-color-scheme: dark)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"16x16\" href=\"/mintlify-assets/_mintlify/favicons/prophia/gMArIoMD4H40C8Fk/_generated/favicon-dark/favicon-16x16.png\" media=\"(prefers-color-scheme: dark)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"32x32\" href=\"/mintlify-assets/_mintlify/favicons/prophia/gMArIoMD4H40C8Fk/_generated/favicon-dark/favicon-32x32.png\" media=\"(prefers-color-scheme: dark)\">\u003clink data-mint-head rel=\"shortcut icon\" type=\"image/x-icon\" href=\"/mintlify-assets/_mintlify/favicons/prophia/gMArIoMD4H40C8Fk/_generated/favicon-dark/favicon.ico\" media=\"(prefers-color-scheme: dark)\">\u003cmeta data-mint-head property=\"og:title\" content=\"GET Lease - Prophia Docs\">\u003cmeta data-mint-head property=\"og:description\" content=\"Returns a single Lease by id. Required capabilities: READ:LEASE\">\u003cmeta data-mint-head property=\"og:site_name\" content=\"Prophia Docs\">\u003cmeta data-mint-head property=\"og:url\" content=\"https://docs.prophia.com/api-reference/v2/leases/get-lease\">\u003cmeta data-mint-head property=\"og:type\" content=\"website\">\u003cmeta data-mint-head property=\"og:image\" content=\"https://prophia.mintlify.site/_mintlify/api/og/v2?division=Leases\u0026amp;title=GET+Lease\u0026amp;description=Returns+a+single+Lease+by+id.%0A%0A**Required+capabilities%3A**+%60READ%3ALEASE%60\u0026amp;theme=6175b23fcc3ea68b1ad8492b\u0026amp;signature=ed07fa53d31375e27e5c0e135975437d7e00222797d84297479b69536749cb1b\">\u003cmeta data-mint-head property=\"og:image:width\" content=\"1200\">\u003cmeta data-mint-head property=\"og:image:height\" content=\"630\">\u003cmeta data-mint-head name=\"twitter:card\" content=\"summary_large_image\">\u003cmeta data-mint-head name=\"twitter:title\" content=\"GET Lease - Prophia Docs\">\u003cmeta data-mint-head name=\"twitter:description\" content=\"Returns a single Lease by id. Required capabilities: READ:LEASE\">\u003cmeta data-mint-head name=\"twitter:image\" content=\"https://prophia.mintlify.site/_mintlify/api/og/v2?division=Leases\u0026amp;title=GET+Lease\u0026amp;description=Returns+a+single+Lease+by+id.%0A%0A**Required+capabilities%3A**+%60READ%3ALEASE%60\u0026amp;theme=6175b23fcc3ea68b1ad8492b\u0026amp;signature=ed07fa53d31375e27e5c0e135975437d7e00222797d84297479b69536749cb1b\">\u003cmeta data-mint-head name=\"twitter:image:width\" content=\"1200\">\u003cmeta data-mint-head name=\"twitter:image:height\" content=\"630\">\u003cmeta data-mint-head name=\"msapplication-config\" content=\"/mintlify-assets/_mintlify/favicons/prophia/gMArIoMD4H40C8Fk/_generated/favicon/browserconfig.xml\">\u003cmeta data-mint-head name=\"apple-mobile-web-app-title\" content=\"Prophia Docs\">\u003cmeta data-mint-head name=\"msapplication-TileColor\" content=\"#017768\">\u003clink data-mint-head rel=\"canonical\" href=\"https://docs.prophia.com/api-reference/v2/leases/get-lease\">\u003clink data-mint-head rel=\"alternate\" type=\"application/xml\" href=\"/sitemap.xml\">\u003clink data-mint-head rel=\"alternate\" type=\"text/markdown\" href=\"/api-reference/v2/leases/get-lease.md\">\u003cscript data-mint-head type=\"application/ld+json\">{\"@context\":\"https://schema.org\",\"@graph\":[{\"@type\":\"Organization\",\"@id\":\"https://docs.prophia.com/#organization\",\"name\":\"Prophia Docs\",\"url\":\"https://docs.prophia.com\",\"logo\":{\"@type\":\"ImageObject\",\"url\":\"https://mintcdn.com/prophia/D5w3N4ZrYouJq2j1/images/ProphiaBrand_Primary-Logo-ForDarkBG-TealAccent.png?fit=max\u0026auto=format\u0026n=D5w3N4ZrYouJq2j1\u0026q=85\u0026s=dc3bd897dc4e1f0320f0ee18d0bab7bb\"}},{\"@type\":\"WebSite\",\"@id\":\"https://docs.prophia.com#website\",\"name\":\"Prophia Docs\",\"url\":\"https://docs.prophia.com\",\"publisher\":{\"@id\":\"https://docs.prophia.com/#organization\"}},{\"@type\":\"WebPage\",\"@id\":\"https://docs.prophia.com/api-reference/v2/leases/get-lease#webpage\",\"url\":\"https://docs.prophia.com/api-reference/v2/leases/get-lease\",\"name\":\"GET Lease\",\"description\":\"Returns a single Lease by id. Required capabilities: READ:LEASE\",\"dateModified\":\"2026-11-04T18:01:19.002Z\",\"isPartOf\":{\"@id\":\"https://docs.prophia.com#website\"},\"breadcrumb\":{\"@id\":\"https://docs.prophia.com/api-reference/v2/leases/get-lease#breadcrumb\"}},{\"@type\":\"BreadcrumbList\",\"@id\":\"https://docs.prophia.com/api-reference/v2/leases/get-lease#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Endpoints\",\"item\":\"https://docs.prophia.com/api-reference/v2/accounts/list-account\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"GET Lease\",\"item\":\"https://docs.prophia.com/api-reference/v2/leases/get-lease\"}]},{\"@type\":[\"TechArticle\",\"APIReference\"],\"@id\":\"https://docs.prophia.com/api-reference/v2/leases/get-lease#apireference\",\"headline\":\"GET Lease\",\"name\":\"GET Lease\",\"description\":\"Returns a single Lease by id. Required capabilities: READ:LEASE\",\"url\":\"https://docs.prophia.com/api-reference/v2/leases/get-lease\",\"mainEntityOfPage\":{\"@id\":\"https://docs.prophia.com/api-reference/v2/leases/get-lease#webpage\"},\"dateModified\":\"2026-11-04T18:01:19.002Z\",\"publisher\":{\"@id\":\"https://docs.prophia.com/#organization\"},\"isPartOf\":{\"@id\":\"https://docs.prophia.com#website\"}}]}\u003c/script>\u003cscript data-mint-head type=\"application/ld+json\">{\"@context\":\"https://schema.org\",\"@type\":\"WebSite\",\"name\":\"Prophia Docs\",\"publisher\":{\"@type\":\"Organization\",\"name\":\"Prophia Docs\"},\"provider\":{\"@type\":\"Organization\",\"name\":\"Mintlify\",\"url\":\"https://mintlify.com\"}}\u003c/script>","agentPointerHref":"/api-reference/v2/leases/get-lease.md","siteName":"Prophia Docs","nav":{"global":null,"tabs":[{"tab":"Guides","pages":[{"title":"Guides","href":""}]},{"tab":"Developers","pages":[{"title":"Developers","href":"/developers/overview"}]},{"tab":"API Reference","versions":[{"version":"v2","default":true,"groups":[{"group":"Getting Started","pages":[{"title":"API Introduction","href":"/api-reference/v2/introduction"}]},{"group":"API Mechanisms","pages":[{"title":"Includes","href":"/api-reference/v2/concepts/includes"},{"title":"Pagination, sorting, and filtering","href":"/api-reference/v2/concepts/pagination-and-filtering"},{"title":"Errors and permissions","href":"/api-reference/v2/concepts/errors-and-permissions"}]},{"group":"Data Concepts","pages":[{"title":"Data model","href":"/api-reference/v2/concepts/data-model"},{"title":"Leases","href":"/api-reference/v2/concepts/leases"},{"title":"Documents","href":"/api-reference/v2/concepts/documents"},{"group":"Tags","pages":[{"title":"Tags and tag values","href":"/api-reference/v2/concepts/tags-and-values"},{"title":"Tag reference","href":"/api-reference/v2/concepts/tag-reference"}]},{"title":"Spaces, applicable spaces, and encumbrances","href":"/api-reference/v2/concepts/spaces-and-encumbrances"},{"title":"Understanding onboarding","href":"/api-reference/v2/concepts/onboarding"}]},{"group":"Endpoints","pages":[{"group":"Accounts","pages":[{"title":"LIST Account","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json get /rest/v2/accounts","href":"/api-reference/v2/accounts/list-account"},{"title":"GET Account","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json get /rest/v2/accounts/{accountId}","href":"/api-reference/v2/accounts/get-account"},{"title":"LIST Leases Recently Updated","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json get /rest/v2/accounts/{accountId}/recent_changed_leases","href":"/api-reference/v2/accounts/list-leases-recently-updated"}]},{"group":"Properties","pages":[{"title":"LIST Property","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json get /rest/v2/accounts/{accountId}/properties","href":"/api-reference/v2/properties/list-property"},{"title":"GET Property","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json get /rest/v2/accounts/{accountId}/properties/{propertyId}","href":"/api-reference/v2/properties/get-property"},{"title":"LIST Building","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json get /rest/v2/accounts/{accountId}/properties/{propertyId}/buildings","href":"/api-reference/v2/properties/list-building"},{"title":"LIST Lease","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json get /rest/v2/accounts/{accountId}/properties/{propertyId}/leases","href":"/api-reference/v2/properties/list-lease"},{"title":"CREATE Property","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json post /rest/v2/accounts/{accountId}/properties","href":"/api-reference/v2/properties/create-property"},{"title":"UPDATE Property","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json patch /rest/v2/accounts/{accountId}/properties/{propertyId}","href":"/api-reference/v2/properties/update-property"}]},{"group":"Buildings","pages":[{"title":"LIST Building","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json get /rest/v2/accounts/{accountId}/buildings","href":"/api-reference/v2/buildings/list-building"},{"title":"GET Building","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json get /rest/v2/accounts/{accountId}/buildings/{buildingId}","href":"/api-reference/v2/buildings/get-building"},{"title":"LIST Lease","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json get /rest/v2/accounts/{accountId}/buildings/{buildingId}/leases","href":"/api-reference/v2/buildings/list-lease"},{"title":"CREATE Building","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json post /rest/v2/accounts/{accountId}/buildings","href":"/api-reference/v2/buildings/create-building"},{"title":"UPDATE Building","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json patch /rest/v2/accounts/{accountId}/buildings/{buildingId}","href":"/api-reference/v2/buildings/update-building"}]},{"group":"Building Spaces","pages":[{"title":"LIST Building Space","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json get /rest/v2/accounts/{accountId}/buildings/{buildingId}/spaces","href":"/api-reference/v2/building-spaces/list-building-space"},{"title":"GET Building Space","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json get /rest/v2/accounts/{accountId}/buildings/{buildingId}/spaces/{spaceId}","href":"/api-reference/v2/building-spaces/get-building-space"},{"title":"CREATE Building Space","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json post /rest/v2/accounts/{accountId}/buildings/{buildingId}/spaces","href":"/api-reference/v2/building-spaces/create-building-space"},{"title":"UPDATE Building Space","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json patch /rest/v2/accounts/{accountId}/buildings/{buildingId}/spaces/{spaceId}","href":"/api-reference/v2/building-spaces/update-building-space"},{"title":"Delete a building space","description":"Permanently deletes a space — this is a hard delete, not an archival; to hide a space while keeping its history, PATCH `archived` to true instead. Returns 200 with an empty body. Requires the REST write module on the account; the caller must be a Prophia team member or an edit user on the account.\n\n**Required capabilities:** `WRITE:BUILDING_SPACE`","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json delete /rest/v2/accounts/{accountId}/buildings/{buildingId}/spaces/{spaceId}","href":"/api-reference/v2/building-spaces/delete-a-building-space"}]},{"group":"Leases","pages":[{"title":"GET Lease","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json get /rest/v2/accounts/{accountId}/leases/{leaseId}","href":"/api-reference/v2/leases/get-lease"},{"title":"LIST Document","description":"Returns a paged list of the Lease's Documents.\n\n**Required capabilities:** `READ:DOCUMENT`","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json get /rest/v2/accounts/{accountId}/leases/{leaseId}/docs","href":"/api-reference/v2/leases/list-document"},{"title":"LIST Tag","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json get /rest/v2/accounts/{accountId}/leases/{leaseId}/tags","href":"/api-reference/v2/leases/list-tag"},{"title":"LIST Raw Tag","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json get /rest/v2/accounts/{accountId}/leases/{leaseId}/tags/raw","href":"/api-reference/v2/leases/list-raw-tag"},{"title":"CREATE Lease","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json post /rest/v2/accounts/{accountId}/leases","href":"/api-reference/v2/leases/create-lease"},{"title":"UPDATE Lease","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json patch /rest/v2/accounts/{accountId}/leases/{leaseId}","href":"/api-reference/v2/leases/update-lease"}]},{"group":"Documents","pages":[{"title":"LIST Page","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json get /rest/v2/accounts/{accountId}/docs/{leaseDocId}/pages","href":"/api-reference/v2/documents/list-page"},{"title":"LIST Tag","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json get /rest/v2/accounts/{accountId}/docs/{leaseDocId}/tags","href":"/api-reference/v2/documents/list-tag"},{"title":"LIST Raw Tag","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json get /rest/v2/accounts/{accountId}/docs/{leaseDocId}/tags/raw","href":"/api-reference/v2/documents/list-raw-tag"},{"title":"CREATE Document via URL","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json post /rest/v2/accounts/{accountId}/docs","href":"/api-reference/v2/documents/create-document-via-url"},{"title":"CREATE Document via Upload","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json post /rest/v2/accounts/{accountId}/docs/upload","href":"/api-reference/v2/documents/create-document-via-upload"},{"title":"UPDATE Document","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json patch /rest/v2/accounts/{accountId}/docs/{leaseDocId}","href":"/api-reference/v2/documents/update-document"}]},{"group":"Tags","pages":[{"title":"GET Tag","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json get /rest/v2/accounts/{accountId}/tags/{tagId}","href":"/api-reference/v2/tags/get-tag"},{"title":"GET Raw Tag","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json get /rest/v2/accounts/{accountId}/tags/{tagId}/raw","href":"/api-reference/v2/tags/get-raw-tag"}]},{"group":"Custom Terms","pages":[{"title":"LIST Custom Term Definition","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json get /rest/v2/accounts/{accountId}/custom-terms","href":"/api-reference/v2/custom-terms/list-custom-term-definition"},{"title":"GET Custom Term Definition","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json get /rest/v2/accounts/{accountId}/custom-terms/{customTermId}","href":"/api-reference/v2/custom-terms/get-custom-term-definition"},{"title":"CREATE Custom Term Definition","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json post /rest/v2/accounts/{accountId}/custom-terms","href":"/api-reference/v2/custom-terms/create-custom-term-definition"},{"title":"UPDATE Custom Term Definition","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json patch /rest/v2/accounts/{accountId}/custom-terms/{customTermId}","href":"/api-reference/v2/custom-terms/update-custom-term-definition"},{"title":"DELETE Custom Term Definition","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json delete /rest/v2/accounts/{accountId}/custom-terms/{customTermId}","href":"/api-reference/v2/custom-terms/delete-custom-term-definition"}]},{"group":"Custom Fields","pages":[{"title":"LIST Custom Field","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json get /rest/v2/accounts/{accountId}/custom-fields","href":"/api-reference/v2/custom-fields/list-custom-field"},{"title":"GET Custom Field","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json get /rest/v2/accounts/{accountId}/custom-fields/{fieldId}","href":"/api-reference/v2/custom-fields/get-custom-field"},{"title":"LIST Custom Field Option","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json get /rest/v2/accounts/{accountId}/custom-fields/{fieldId}/options","href":"/api-reference/v2/custom-fields/list-custom-field-option"},{"title":"GET Custom Field Option","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json get /rest/v2/accounts/{accountId}/custom-fields/{fieldId}/options/{optionId}","href":"/api-reference/v2/custom-fields/get-custom-field-option"},{"title":"CREATE Custom Field","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json post /rest/v2/accounts/{accountId}/custom-fields","href":"/api-reference/v2/custom-fields/create-custom-field"},{"title":"CREATE Custom Field Assignment","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json post /rest/v2/accounts/{accountId}/custom-fields/{fieldId}/assignments","href":"/api-reference/v2/custom-fields/create-custom-field-assignment"},{"title":"CREATE Custom Field Option","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json post /rest/v2/accounts/{accountId}/custom-fields/{fieldId}/options","href":"/api-reference/v2/custom-fields/create-custom-field-option"},{"title":"UPDATE Custom Field","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json patch /rest/v2/accounts/{accountId}/custom-fields/{fieldId}","href":"/api-reference/v2/custom-fields/update-custom-field"},{"title":"UPDATE Custom Field Option","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json patch /rest/v2/accounts/{accountId}/custom-fields/{fieldId}/options/{optionId}","href":"/api-reference/v2/custom-fields/update-custom-field-option"},{"title":"DELETE Custom Field","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json delete /rest/v2/accounts/{accountId}/custom-fields/{fieldId}","href":"/api-reference/v2/custom-fields/delete-custom-field"},{"title":"DELETE Custom Field Assignment","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json delete /rest/v2/accounts/{accountId}/custom-fields/{fieldId}/assignments/{buildingId}","href":"/api-reference/v2/custom-fields/delete-custom-field-assignment"},{"title":"DELETE Custom Field Option","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json delete /rest/v2/accounts/{accountId}/custom-fields/{fieldId}/options/{optionId}","href":"/api-reference/v2/custom-fields/delete-custom-field-option"}]}]},{"group":"Beta","pages":[{"title":"Beta endpoints","href":"/api-reference/v2/beta"},{"group":"Loans","pages":[{"title":"LIST Loan","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json get /rest/v2/accounts/{accountId}/loans","href":"/api-reference/v2/loans/list-loan"},{"title":"GET Loan","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json get /rest/v2/accounts/{accountId}/loans/{loanId}","href":"/api-reference/v2/loans/get-loan"}]}]}]},{"version":"v1 (deprecated)","pages":[{"title":"v1 (deprecated)","href":"/api-reference/v1/leases/get-lease"}]}]}]},"basePath":"","title":"GET Lease - Prophia Docs","buildId":"dpl_Fyv1NbzwP68g2bEH2Roy98uY1zmE","deploymentId":"dpl_Fyv1NbzwP68g2bEH2Roy98uY1zmE","dynamics":["c2aa737661","2b790eda92","b0f84f53ff","a9bb46feb3"],"chunks":["OpenApiReferenceProvider-DdEMm2kG.js","utils-BMo572L7.js","cloneDeep-izs3Hzxb.js","_Uint8Array-BVIqJ90l.js","isObjectLike-C8vmzPEN.js","isArray-Dcu1dQ5t.js","utils-C-4m9KAx.js","toString-BX-iyh8G.js","isSymbol-CSH9U2Gm.js","addUniqueKeysToSchema-DPLK2Oq9.js","snippetPresets-BKjfJMC9.js","style-to-object-BY3JEAdk.js","v4-DIgz8zy6.js","conditional-requirements-CFM0id0Q.js","ApiExamples-DTsgtCEj.js","isEqual-BfaiBbcl.js","usePlaygroundInputsStore-C8vmhyQM.js","shallow-r9w8LQGS.js","getApiPlaygroundDisplay-DjPI64HQ.js","CodeSnippet-C8Bvhl16.js","CodeSnippets-BtWUwcMy.js","Page-BIYvYBgk.js","getPastedJson-Dcm_3Pgl.js","icon-BXwrTpjc.js","MethodPill-CcjfVmmy.js","DuplicateIcon-BuKIbXAQ.js","createIcon-DaL9yXsO.js","DynamicMarkdown-Co5nikxh.js","SectionHeading-P4UNTsMZ.js","axios-vUo_bRtp.js","Markdown-CEfymfIH.js","clsx-Dq9TQuNi.js","lib-DuNMoZ05.js","lib-B8HbPgcC.js","html-void-elements-mCSPHezU.js","dist-D2J8knkn.js","katex-YMM-FMeD.js","marked.esm-CZWythHk.js","AssistantPageLink-BgZ2ThuU.js"]}