placestack-com · Schema
Parcel
A parcel: a piece of land with its assessor's record.
CompanyReal EstateDataAPIGeospatialProperty
Properties
| Name | Type | Description |
|---|---|---|
| object | string | The object's type. Always `parcel`. |
| id | string | A parcel id. |
| number | object | Primary parcel number. Null when not published. |
| identifiers | array | Every parcel identifier, primary first. |
| jurisdiction | object | |
| within | array | The jurisdictions that contain `jurisdiction`, largest first. |
| status | string | Parcel status. Always `active`. |
| type | object | Parcel type, as published. Null when not published. |
| area | object | Parcel size. Null when there is no boundary. |
| centroid | object | A point inside the boundary. Null when there is no boundary. |
| addresses | array | Addresses on the parcel, main address first. Empty when none are published. |
| owners | array | Owners of record, in published order. Empty when none are published. |
| assessment | object | Latest assessment. Null when not published. |
| buildings | array | Buildings on the parcel, main building first. Empty when none are published. |
| sales | array | Recorded sales of the parcel, most recent first. Empty when none are published. |
| legal | object | Legal description. Null when not published. |
| geometry | object | Boundary, as GeoJSON. Included only with `include=geometry`; null otherwise. |
| match | object | How the search matched this parcel. Null unless the request used `address`, `apn`, `lat` with `lon`, or an id. |
| as_of | string | Date of the most recent update to this parcel. |
| href | string | The object's path in the API. |
JSON Schema
{
"$schema": "https://json-schema.org/draft/2020-12/schema",
"$id": "https://artifacts.apis.io/placestack-com/json-schema/placestack-com-parcel-schema.json",
"title": "Parcel",
"description": "A parcel: a piece of land with its assessor's record.",
"x-generated": "2026-10-30",
"x-method": "derived",
"x-generator": "derive-json-schema.py",
"x-source": "openapi/placestack-com-openapi.json#/components/schemas/Parcel",
"properties": {
"object": {
"type": "string",
"const": "parcel",
"title": "Object",
"description": "The object's type. Always `parcel`.",
"default": "parcel"
},
"id": {
"type": "string",
"pattern": "^prc_[0-7][0-9a-hjkmnp-tv-z]{25}$",
"title": "Id",
"description": "A parcel id."
},
"number": {
"anyOf": [
{
"$ref": "#/$defs/Number"
},
{
"type": "null"
}
],
"description": "Primary parcel number. Null when not published."
},
"identifiers": {
"items": {
"$ref": "#/$defs/parcel__Identifier"
},
"type": "array",
"title": "Identifiers",
"description": "Every parcel identifier, primary first."
},
"jurisdiction": {
"$ref": "#/$defs/parcel__JurisdictionRef"
},
"within": {
"items": {
"$ref": "#/$defs/parcel__Within"
},
"type": "array",
"title": "Within",
"description": "The jurisdictions that contain `jurisdiction`, largest first."
},
"status": {
"type": "string",
"title": "Status",
"description": "Parcel status. Always `active`."
},
"type": {
"anyOf": [
{
"$ref": "#/$defs/Code"
},
{
"type": "null"
}
],
"description": "Parcel type, as published. Null when not published."
},
"area": {
"anyOf": [
{
"$ref": "#/$defs/Area"
},
{
"type": "null"
}
],
"description": "Parcel size. Null when there is no boundary."
},
"centroid": {
"anyOf": [
{
"$ref": "#/$defs/parcel__Point"
},
{
"type": "null"
}
],
"description": "A point inside the boundary. Null when there is no boundary."
},
"addresses": {
"items": {
"$ref": "#/$defs/ParcelAddress"
},
"type": "array",
"title": "Addresses",
"description": "Addresses on the parcel, main address first. Empty when none are published."
},
"owners": {
"items": {
"$ref": "#/$defs/Owner"
},
"type": "array",
"title": "Owners",
"description": "Owners of record, in published order. Empty when none are published."
},
"assessment": {
"anyOf": [
{
"$ref": "#/$defs/Assessment"
},
{
"type": "null"
}
],
"description": "Latest assessment. Null when not published."
},
"buildings": {
"items": {
"$ref": "#/$defs/Building"
},
"type": "array",
"title": "Buildings",
"description": "Buildings on the parcel, main building first. Empty when none are published."
},
"sales": {
"items": {
"$ref": "#/$defs/Sale"
},
"type": "array",
"title": "Sales",
"description": "Recorded sales of the parcel, most recent first. Empty when none are published."
},
"legal": {
"anyOf": [
{
"$ref": "#/$defs/Legal"
},
{
"type": "null"
}
],
"description": "Legal description. Null when not published."
},
"geometry": {
"anyOf": [
{
"$ref": "#/$defs/Geometry"
},
{
"type": "null"
}
],
"description": "Boundary, as GeoJSON. Included only with `include=geometry`; null otherwise."
},
"match": {
"anyOf": [
{
"$ref": "#/$defs/Match"
},
{
"type": "null"
}
],
"description": "How the search matched this parcel. Null unless the request used `address`, `apn`, `lat` with `lon`, or an id."
},
"as_of": {
"type": "string",
"format": "date",
"title": "As Of",
"description": "Date of the most recent update to this parcel."
},
"href": {
"type": "string",
"title": "Href",
"description": "The object's path in the API."
}
},
"type": "object",
"required": [
"object",
"id",
"number",
"identifiers",
"jurisdiction",
"within",
"status",
"type",
"area",
"centroid",
"addresses",
"owners",
"assessment",
"buildings",
"sales",
"legal",
"geometry",
"match",
"as_of",
"href"
],
"$defs": {
"Address": {
"properties": {
"raw": {
"type": "string",
"title": "Raw",
"description": "Full address on one line: every line it is published on, in order, joined with a comma."
},
"recipient": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"title": "Recipient",
"description": "Care-of or attention line, as published. Null when there is none."
},
"street_line_1": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"title": "Street Line 1",
"description": "First street line: house number and street, or a PO box. Null when not published."
},
"street_line_2": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"title": "Street Line 2",
"description": "Second street line: apartment, suite, unit or building. Null when there is none."
},
"street_number": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"title": "Street Number",
"description": "House number. Null when not published."
},
"street_name": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"title": "Street Name",
"description": "Street name, without its type. Null when not published."
},
"unit": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"title": "Unit",
"description": "Unit number. Null when there is none."
},
"locality": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"title": "Locality",
"description": "City, town or village. Null when not published."
},
"region": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"title": "Region",
"description": "State, as its two-letter abbreviation. Null when not published."
},
"postal_code": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"title": "Postal Code",
"description": "ZIP or postal code. Null when not published."
},
"point": {
"anyOf": [
{
"$ref": "#/$defs/parcel__Point"
},
{
"type": "null"
}
],
"description": "Location of the address point, as published. Null when not published."
}
},
"type": "object",
"required": [
"raw"
],
"title": "Address",
"description": "A postal address, as published, with its parts where they are published separately."
},
"Area": {
"properties": {
"sq_m": {
"type": "number",
"title": "Sq M",
"description": "Area in square meters, measured from the boundary."
},
"acres": {
"type": "number",
"title": "Acres",
"description": "Area in acres, measured from the boundary. Used by `min_acres` and `max_acres`."
},
"stated_acres": {
"anyOf": [
{
"type": "number"
},
{
"type": "null"
}
],
"title": "Stated Acres",
"description": "Deeded or legal area in acres, as published. Null when not published."
}
},
"type": "object",
"required": [
"sq_m",
"acres"
],
"title": "Area",
"description": "A parcel's size."
},
"Assessment": {
"properties": {
"tax_year": {
"anyOf": [
{
"type": "integer"
},
{
"type": "null"
}
],
"title": "Tax Year",
"description": "Tax year of the assessment. Null when not published."
},
"class": {
"anyOf": [
{
"$ref": "#/$defs/LandUseCode"
},
{
"type": "null"
}
],
"description": "Property class, as assigned by the assessor. Null when not published."
},
"use": {
"anyOf": [
{
"$ref": "#/$defs/LandUseCode"
},
{
"type": "null"
}
],
"description": "Land use, as assigned by the assessor. Null when not published."
},
"value": {
"anyOf": [
{
"$ref": "#/$defs/Value"
},
{
"type": "null"
}
],
"description": "Values, by basis. Null when not published."
},
"exemptions": {
"items": {
"$ref": "#/$defs/Exemption"
},
"type": "array",
"title": "Exemptions",
"description": "Tax exemptions. Empty when there are none."
}
},
"type": "object",
"title": "Assessment",
"description": "The latest assessment of the parcel."
},
"BasisTotal": {
"properties": {
"total": {
"anyOf": [
{
"type": "number"
},
{
"type": "null"
}
],
"title": "Total",
"description": "Total value. Null when not published."
}
},
"type": "object",
"title": "BasisTotal",
"description": "A total value, in US dollars."
},
"Building": {
"properties": {
"building_number": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"title": "Building Number",
"description": "Building or card number on the parcel, as published. Null when not published."
},
"type": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"title": "Type",
"description": "Building type, as published. Null when not published."
},
"description": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"title": "Description",
"description": "Building description, as published. Null when not published."
},
"use_code": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"title": "Use Code",
"description": "Building use code, as published. Null when not published."
},
"value": {
"anyOf": [
{
"type": "number"
},
{
"type": "null"
}
],
"title": "Value",
"description": "Market value of the building, in US dollars. Null when not published."
},
"year_built": {
"anyOf": [
{
"type": "integer"
},
{
"type": "null"
}
],
"title": "Year Built",
"description": "Year built. Null when not published."
},
"effective_year_built": {
"anyOf": [
{
"type": "integer"
},
{
"type": "null"
}
],
"title": "Effective Year Built",
"description": "Effective year built, after major renovation. Null when not published."
},
"building_area_sq_ft": {
"anyOf": [
{
"type": "number"
},
{
"type": "null"
}
],
"title": "Building Area Sq Ft",
"description": "Gross building area, in square feet. Null when not published."
},
"living_area_sq_ft": {
"anyOf": [
{
"type": "number"
},
{
"type": "null"
}
],
"title": "Living Area Sq Ft",
"description": "Living area, in square feet. Null when not published."
},
"stories": {
"anyOf": [
{
"type": "number"
},
{
"type": "null"
}
],
"title": "Stories",
"description": "Number of stories. Null when not published."
},
"unit_count": {
"anyOf": [
{
"type": "integer"
},
{
"type": "null"
}
],
"title": "Unit Count",
"description": "Number of units. Null when not published."
},
"bedroom_count": {
"anyOf": [
{
"type": "number"
},
{
"type": "null"
}
],
"title": "Bedroom Count",
"description": "Number of bedrooms. Null when not published."
},
"full_bath_count": {
"anyOf": [
{
"type": "number"
},
{
"type": "null"
}
],
"title": "Full Bath Count",
"description": "Number of full bathrooms. Null when not published."
},
"half_bath_count": {
"anyOf": [
{
"type": "number"
},
{
"type": "null"
}
],
"title": "Half Bath Count",
"description": "Number of half bathrooms. Null when not published."
},
"construction_type": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"title": "Construction Type",
"description": "Construction type, as published. Null when not published."
},
"quality_code": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"title": "Quality Code",
"description": "Construction quality code, as published. Null when not published."
},
"quality_description": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"title": "Quality Description",
"description": "Construction quality, as published. Null when not published."
},
"condition_code": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"title": "Condition Code",
"description": "Condition code, as published. Null when not published."
},
"condition_description": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"title": "Condition Description",
"description": "Condition, as published. Null when not published."
},
"garage_type": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"title": "Garage Type",
"description": "Garage type, as published. Null when not published."
},
"basement_type": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"title": "Basement Type",
"description": "Basement type, as published. Null when not published."
},
"fireplace": {
"anyOf": [
{
"type": "boolean"
},
{
"type": "null"
}
],
"title": "Fireplace",
"description": "Whether the building has a fireplace. Null when not published."
},
"percent_complete": {
"anyOf": [
{
"type": "number"
},
{
"type": "null"
}
],
"title": "Percent Complete",
"description": "Share of construction complete, as a percentage. Null when not published."
},
"heating_type": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"title": "Heating Type",
"description": "Heating type, as published. Null when not published."
},
"style": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"title": "Style",
"description": "Building style, as published. Null when not published."
},
"room_count": {
"anyOf": [
{
"type": "number"
},
{
"type": "null"
}
],
"title": "Room Count",
"description": "Number of rooms. Null when not published."
},
"bath_count": {
"anyOf": [
{
"type": "number"
},
{
"type": "null"
}
],
"title": "Bath Count",
"description": "Number of bathrooms, with a half bath counted as `0.5`. Null when not published."
},
"exterior_wall": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"title": "Exterior Wall",
"description": "Exterior wall material, as published. Null when not published."
},
"roof_cover": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"title": "Roof Cover",
"description": "Roof covering, as published. Null when not published."
},
"roof_type": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"title": "Roof Type",
"description": "Roof shape, as published. Null when not published."
},
"foundation_type": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"title": "Foundation Type",
"description": "Foundation type, as published. Null when not published."
},
"cooling_type": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"title": "Cooling Type",
"description": "Cooling type, as published. Null when not published."
},
"heating_fuel": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"title": "Heating Fuel",
"description": "Heating fuel, as published. Null when not published."
},
"fireplace_count": {
"anyOf": [
{
"type": "number"
},
{
"type": "null"
}
],
"title": "Fireplace Count",
"description": "Number of fireplaces. Null when not published."
},
"garage_area_sq_ft": {
"anyOf": [
{
"type": "number"
},
{
"type": "null"
}
],
"title": "Garage Area Sq Ft",
"description": "Garage area, in square feet. Null when not published."
},
"basement_area_sq_ft": {
"anyOf": [
{
"type": "number"
},
{
"type": "null"
}
],
"title": "Basement Area Sq Ft",
"description": "Basement area, in square feet. Null when not published."
},
"basement_finished_area_sq_ft": {
"anyOf": [
{
"type": "number"
},
{
"type": "null"
}
],
"title": "Basement Finished Area Sq Ft",
"description": "Finished basement area, in square feet. Null when not published."
},
"year_remodeled": {
"anyOf": [
{
"type": "integer"
},
{
"type": "null"
}
],
"title": "Year Remodeled",
"description": "Year of the last remodel. Null when not published."
}
},
"type": "object",
"title": "Building",
"description": "A building on the parcel."
},
"Code": {
"properties": {
"code": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"title": "Code",
"description": "Code, as published."
},
"description": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"title": "Description",
"description": "Meaning of the code, as published. Null when not published."
},
"standard": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"title": "Standard",
"description": "Standard value, shared across jurisdictions. Null when not yet classified."
}
},
"type": "object",
"title": "Code",
"description": "A coded value, as published, with its standard equivalent."
},
"Exemption": {
"properties": {
"type": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"title": "Type",
"description": "Exemption type, as published. Null when not published."
},
"code": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"title": "Code",
"description": "Exemption code, as published. Null when not published."
},
"description": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"title": "Description",
"description": "Meaning of the code, as published. Null when not published."
},
"standard": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"title": "Standard",
"description": "Standard value, shared across jurisdictions. Null when not yet classified."
},
"amount": {
"anyOf": [
{
"type": "number"
},
{
"type": "null"
}
],
"title": "Amount",
"description": "Amount exempted, in US dollars. Null when not published."
},
"percentage": {
"anyOf": [
{
"type": "number"
},
{
"type": "null"
}
],
"title": "Percentage",
"description": "Share exempted, between 0 and 1. Null when not published."
}
},
"type": "object",
"title": "Exemption",
"description": "A tax exemption on the assessment."
},
"Geometry": {
"properties": {
"type": {
"type": "string",
"title": "Type",
"description": "Geometry type. One of `Polygon` or `MultiPolygon`."
},
"coordinates": {
"items": {},
"type": "array",
"title": "Coordinates",
"description": "Coordinates, as `[longitude, latitude]` positions nested by geometry type."
}
},
"type": "object",
"required": [
"type",
"coordinates"
],
"title": "Geometry",
"description": "A GeoJSON geometry in WGS 84, longitude first."
},
"LandUseCode": {
"properties": {
"code": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"title": "Code",
"description": "Code, as published."
},
"description": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"title": "Description",
"description": "Meaning of the code, as published. Null when not published."
},
"standard": {
"anyOf": [
{
"type": "string",
"enum": [
"residential",
"residential.single_family",
"residential.multi_family",
"residential.condominium",
"residential.mobile_home",
"residential.common_area",
"commercial",
"commercial.retail",
"commercial.office",
"commercial.lodging",
"commercial.recreation",
"commercial.parking",
"industrial",
"industrial.manufacturing",
"industrial.warehouse",
"industrial.mining",
"agricultural",
"agricultural.timber",
"vacant",
"vacant.residential",
"vacant.commercial",
"vacant.industrial",
"institutional",
"institutional.government",
"institutional.religious",
"institutional.education",
"institutional.health",
"institutional.cemetery",
"open_space",
"open_space.conservation",
"open_space.water",
"open_space.recreation",
"utility",
"mixed",
"exempt",
"mineral_rights"
]
},
{
"type": "null"
}
],
"title": "Standard",
"description": "Land use, shared across jurisdictions: a category, or a category and a kind joined by a dot. Null when the code is not classified."
}
},
"type": "object",
"title": "LandUseCode",
"description": "A land use or property class code, as published, with its standard land use."
},
"Legal": {
"properties": {
"description": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"title": "Description",
"description": "Full legal description, as published."
},
"subdivision": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"title": "Subdivision",
"description": "Subdivision name. Null when not published."
},
"plat_name": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"title": "Plat Name",
"description": "Plat name. Null when not published."
},
"plat_book": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"title": "Plat Book",
"description": "Plat book. Null when not published."
},
"plat_page": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"title": "Plat Page",
"description": "Plat page. Null when not published."
},
"block": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"title": "Block",
"description": "Block. Null when not published."
},
"lot": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"title": "Lot",
"description": "Lot. Null when not published."
},
"section": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"title": "Section",
"description": "Section, in the public land survey. Null when not published."
},
"township": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"title": "Township",
"description": "Township, in the public land survey. Null when not published."
},
"range": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"title": "Range",
"description": "Range, in the public land survey. Null when not published."
}
},
"type": "object",
"title": "Legal",
"description": "The legal description and its parts, as published."
},
"MarketValue": {
"properties": {
"land": {
"anyOf": [
{
"type": "number"
},
{
"type": "null"
}
],
"title": "Land",
"description": "Land value. Null when not published."
},
"improvement": {
"anyOf": [
{
"type": "number"
},
{
"type": "null"
}
# --- truncated at 32 KB (49 KB total) ---
# Full source: https://artifacts.apis.io/placestack-com/json-schema/placestack-com-parcel-schema.json
Work with this as data
Every JSON Schema here is available over the APIs.io API and to AI agents over MCP.
MCP server
One button, every client — Claude, Cursor, VS Code and the rest.
https://apis.io/mcp
Tools for schemas
4 MCP tools reach this
find_json_schemasBrowse and filter every JSON Schema in the catalog.apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.resolveTurn a domain, URL or GitHub org into the provider it belongs to.find_cohortsEvery scored population of providers in the catalog.
Call it yourself
curl for this page
This JSON Schema
curl "https://apis.io/api/v1/json-schemas/placestack-com-parcel"
All schemas
curl "https://apis.io/api/v1/json-schemas?limit=25"
Discovery needs no key. Ratings and market analysis are Pro.
Get an API key
Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.
A second provider on the same verified email joins the account you already have.