Developers · Record fields

Reference · Schemas

Record fields

Every field Greenfinch delivers, for each kind of record, with its type, whether it always carries a value, and which rule can withhold it. There are 310 delivered fields across 7 record types today.

This list is generated, not written by hand

Greenfinch compiles this page from the same field list its delivery code reads — the one list every delivery is built from. So it describes exactly what ships and nothing else: a field Greenfinch adds appears here in the same change, and a field that stops shipping cannot be left behind. Anything Greenfinch intends to deliver but does not deliver yet is marked planned, and cannot stay marked that way once it starts shipping.

How to read this page

Whether a field is present and whether it carries a value are two different questions, and the difference decides whether you can build on it:

  • Is the field always in the record? In the flat records, yes — every field is present on every record, with or without a value, so a loader built once keeps working. In the nested lead-bundle record, a field inside a list is there only when the list has something in it.
  • Does it always carry a value? Usually not. A field marked can be empty says, in the same line, what makes it empty.

A field being present is not a promise that it has content

Some fields are part of the delivery contract and carry a value rarely or not at all today — the column still ships so your loader can rely on it, and it is marked rarely carries a value today so you do not plan around content that is not there. This page never states how often a field is filled unless the figure below has actually been measured, with the number of records it was measured against.

How often a field actually carries a value

Measured county by county. Each figure below names the population it was counted against and how large that population is, so a percentage never stands on its own. Counties are listed alongside each other rather than replacing one another.

CountyMeasuredPopulations counted
Montgomery County, MD2026-09-176,159 published commercial properties (properties); 2,490 researched properties (properties); 3,669 properties not yet researched (properties); 629 researched firms (organizations); 1,134 firms awaiting research (organizations); 1,763 firms linked to a published property (organizations); 3,705 people linked to a published property (contacts)
Collin County, TX2026-09-179,986 published commercial properties (properties); 10 researched properties (properties); 9,976 properties not yet researched (properties); 9 researched firms (organizations); 9 firms awaiting research (organizations); 18 firms linked to a published property (organizations); 22 people linked to a published property (contacts)
Dallas County, TX2026-09-1736,156 published commercial properties (properties); 30 researched properties (properties); 36,126 properties not yet researched (properties); 17 researched firms (organizations); 24 firms awaiting research (organizations); 41 firms linked to a published property (organizations); 64 people linked to a published property (contacts)
Denton County, TX2026-09-178,594 published commercial properties (properties); 6 researched properties (properties); 8,588 properties not yet researched (properties); 5 researched firms (organizations); 2 firms awaiting research (organizations); 7 firms linked to a published property (organizations); 8 people linked to a published property (contacts)
Tarrant County, TX2026-09-1726,578 published commercial properties (properties); 5 researched properties (properties); 26,573 properties not yet researched (properties); 5 researched firms (organizations); 7 firms awaiting research (organizations); 12 firms linked to a published property (organizations); 12 people linked to a published property (contacts)

The two doors, and where they differ

Records leave Greenfinch two ways, and they do not deliver exactly the same fields. The differences below matter when you choose a door.

DoorWhat it isWhat it delivers
REST APIOne record at a time over HTTPS, with an organization API key.The nested lead-bundle record, plus its own per-record reads.
AI assistantThe same records through a connected AI assistant.The nested lead-bundle record, plus the same per-record reads as the REST API.
  • The REST API and a connected assistant deliver the same fields as each other. Not by coincidence and not by two lists kept in step: each mirrored REST address runs the assistant tool's own handler and answers with its result unchanged, so there is one field set and one place it can change.
  • The lead-bundle record is one shape both doors deliver, field for field, assembled once and reduced by your administrators' own field choice through one shared step — which is why an integration can move between doors without remapping.
  • The six flat record types arrive only as delivered files. Ask the REST API or an assistant for a property, a firm or a person and you get their own nested answer instead, with different names and a different set — documented on REST API and in the MCP tool reference. Three differences catch people out:
    • The confidence scores on a person (how sure Greenfinch is of a name, an address or a profile) are included in delivered files and in the lead bundle, and never reach the REST API or an assistant.
    • Delivered files and the lead bundle carry the county's stated owner as registered_owner; the per-record reads call the same fact the record owner. Likewise the delivered assessed_total_valis the per-record reads' total assessed value, and greenfinch_property_id is simply their id — the same property identifier under a shorter name.
    • A property search returns a shortened form of Greenfinch's written account of the property. The full text ships only in delivered files, the lead bundle and a single-property read.

What can withhold a field

A field can be empty because Greenfinch has nothing to put there, or because a rule withholds it. The two are marked separately: every field says what makes it empty, and a field a rule can withhold also carries that rule. Each rule applies to some doors and not others.

RuleWhat it meansApplies to
Your administrators' field choiceYour own administrators can exclude this field. It applies to the lead-bundle records Greenfinch sends to your systems and to what a connected assistant receives.REST API, AI assistant
Your planYour plan decides whether this field ships at all.REST API, AI assistant
Access to the recordOnly on records you have access to — a contact you have revealed, a property you have unlocked, or an area your licence covers. A record you do not have access to is not delivered with blanks; it is not delivered at all, so this marks the fields that make a record worth accessing rather than fields you will see empty.REST API, AI assistant
A withheld ownerBlank on a property whose owner Greenfinch withholds. Where a county's own record names no owner in a state whose law requires it, Greenfinch treats the owner as withheld — decided property by property from the county's data, and reversed automatically when the county publishes a name.REST API, AI assistant
Phone delivery policyBusiness numbers ship. A mobile or personal number ships only where Greenfinch's phone policy allows it for this channel and for where the person lives; in some places it never does. A number the policy denies is simply not in the list.REST API, AI assistant
Greenfinch researchPresent only once Greenfinch's research has run on the record.REST API, AI assistant
Your own contentYour own people wrote it, so it is there only if they did.REST API, AI assistant
Rarely carries a value todayGreenfinch does not populate this field broadly today. The column still ships on every record so a loader can rely on it, but do not plan on a value being there; the fill-rate figures are the only statement of how often one is.REST API, AI assistant

Two rules worth knowing. A field your administrators have excluded arrives empty rather than missing, so your loader never has to cope with a changing set of columns. And where a record is withheld entirely — a person suppressed, deleted or erased, a property withheld, retired or merged — you do not receive a blank shell: the whole record is withheld.

Names that repeat, and mean different things

A few field names appear on more than one record type with a different meaning. They are worth knowing before you map them:

  • is_current on the property-to-firm link says the firm is still attached to the property. On the person-to-firm link it says the person still works at the firm. Different facts, same name.
  • city and stateon a property are where the property is. On a firm they are the firm's own address, which is frequently somewhere else entirely.
  • title on a person is their job title. On the person-to-firm link it is the same job title, repeated on the link so a firm-only delivery can still see a role — and it is the one link field that needs the people permission.

Building details, and the detail beside each one

A property carries a set of building details — year built, floor count, heating and cooling, construction, walls, foundation, roof, the assessor's quality grade, and whether there is a pool or sprinklers. Where the county lists every building on a site, each value is worked out across all of them, and the lead-bundle record carries a detail object beside it (heating_type_detail beside heating_type) saying how many buildings it covers and what share of the floor area. The value and its detail are always present together or empty together. Where only one main-building record is known, the detail says so with main_building_only and its counts are empty. The per-record reads carry the same details under camel-case names; the property records carry the values only.

Changed 2026-09-16: where a county lists every building on a site, year_built carries the year of the building with the most floor area — or, when that building's record gives no year, of the largest building that does — and num_floors carries the tallest building's floor count, rounded up to a whole floor.

Properties

Everything Greenfinch knows about a commercial property: where it is, what it is, how big it is, who is behind it and what Greenfinch's research concluded.

Fields

50 fields delivered

greenfinch_property_ididentifies the row

string

Greenfinch's identifier for the property. It is the only property identifier Greenfinch publishes, it is stable, and it is what every other row and every de-duplication check keys on.

Always in the record. Always carries a value.

Montgomery County, MD — 6,159 of 6,159 published commercial properties (100.0%); 2,490 of 2,490 researched properties (100.0%); 3,669 of 3,669 properties not yet researched (100.0%) · measured 2026-09-17

Collin County, TX — 9,986 of 9,986 published commercial properties (100.0%); 10 of 10 researched properties (100.0%); 9,976 of 9,976 properties not yet researched (100.0%) · measured 2026-09-17

Dallas County, TX — 36,156 of 36,156 published commercial properties (100.0%); 30 of 30 researched properties (100.0%); 36,126 of 36,126 properties not yet researched (100.0%) · measured 2026-09-17

Denton County, TX — 8,594 of 8,594 published commercial properties (100.0%); 6 of 6 researched properties (100.0%); 8,588 of 8,588 properties not yet researched (100.0%) · measured 2026-09-17

Tarrant County, TX — 26,578 of 26,578 published commercial properties (100.0%); 5 of 5 researched properties (100.0%); 26,573 of 26,573 properties not yet researched (100.0%) · measured 2026-09-17

address

string

The property's street address, validated where validation succeeded and otherwise the county's own line. Always a string, though it can be an empty one where no source carries an address at all.

Always in the record. Always carries a value.

Montgomery County, MD — 6,057 of 6,159 published commercial properties (98.3%); 2,483 of 2,490 researched properties (99.7%); 3,574 of 3,669 properties not yet researched (97.4%) · measured 2026-09-17

Collin County, TX — 9,787 of 9,986 published commercial properties (98.0%); 10 of 10 researched properties (100.0%); 9,777 of 9,976 properties not yet researched (98.0%) · measured 2026-09-17

Dallas County, TX — 36,156 of 36,156 published commercial properties (100.0%); 30 of 30 researched properties (100.0%); 36,126 of 36,126 properties not yet researched (100.0%) · measured 2026-09-17

Denton County, TX — 8,517 of 8,594 published commercial properties (99.1%); 6 of 6 researched properties (100.0%); 8,511 of 8,588 properties not yet researched (99.1%) · measured 2026-09-17

Tarrant County, TX — 26,578 of 26,578 published commercial properties (100.0%); 5 of 5 researched properties (100.0%); 26,573 of 26,573 properties not yet researched (100.0%) · measured 2026-09-17

city

string | null

The city.

Always in the record. Can be empty: The county's record carries no city for this parcel.

Montgomery County, MD — 6,150 of 6,159 published commercial properties (99.9%); 2,486 of 2,490 researched properties (99.8%); 3,664 of 3,669 properties not yet researched (99.9%) · measured 2026-09-17

Collin County, TX — 9,963 of 9,986 published commercial properties (99.8%); 10 of 10 researched properties (100.0%); 9,953 of 9,976 properties not yet researched (99.8%) · measured 2026-09-17

Dallas County, TX — 36,120 of 36,156 published commercial properties (99.9%); 30 of 30 researched properties (100.0%); 36,090 of 36,126 properties not yet researched (99.9%) · measured 2026-09-17

Denton County, TX — 8,585 of 8,594 published commercial properties (99.9%); 6 of 6 researched properties (100.0%); 8,579 of 8,588 properties not yet researched (99.9%) · measured 2026-09-17

Tarrant County, TX — 26,554 of 26,578 published commercial properties (99.9%); 5 of 5 researched properties (100.0%); 26,549 of 26,573 properties not yet researched (99.9%) · measured 2026-09-17

state

string | null

The two-letter state code.

Always in the record. Can be empty: The county's record carries no state for this parcel.

Montgomery County, MD — 6,159 of 6,159 published commercial properties (100.0%); 2,490 of 2,490 researched properties (100.0%); 3,669 of 3,669 properties not yet researched (100.0%) · measured 2026-09-17

Collin County, TX — 9,986 of 9,986 published commercial properties (100.0%); 10 of 10 researched properties (100.0%); 9,976 of 9,976 properties not yet researched (100.0%) · measured 2026-09-17

Dallas County, TX — 36,156 of 36,156 published commercial properties (100.0%); 30 of 30 researched properties (100.0%); 36,126 of 36,126 properties not yet researched (100.0%) · measured 2026-09-17

Denton County, TX — 8,594 of 8,594 published commercial properties (100.0%); 6 of 6 researched properties (100.0%); 8,588 of 8,588 properties not yet researched (100.0%) · measured 2026-09-17

Tarrant County, TX — 26,578 of 26,578 published commercial properties (100.0%); 5 of 5 researched properties (100.0%); 26,573 of 26,573 properties not yet researched (100.0%) · measured 2026-09-17

zip

string | null

The postal code.

Always in the record. Can be empty: The county's record carries no postal code for this parcel.

Montgomery County, MD — 6,159 of 6,159 published commercial properties (100.0%); 2,490 of 2,490 researched properties (100.0%); 3,669 of 3,669 properties not yet researched (100.0%) · measured 2026-09-17

Collin County, TX — 9,986 of 9,986 published commercial properties (100.0%); 10 of 10 researched properties (100.0%); 9,976 of 9,976 properties not yet researched (100.0%) · measured 2026-09-17

Dallas County, TX — 36,156 of 36,156 published commercial properties (100.0%); 30 of 30 researched properties (100.0%); 36,126 of 36,126 properties not yet researched (100.0%) · measured 2026-09-17

Denton County, TX — 8,594 of 8,594 published commercial properties (100.0%); 6 of 6 researched properties (100.0%); 8,588 of 8,588 properties not yet researched (100.0%) · measured 2026-09-17

Tarrant County, TX — 26,578 of 26,578 published commercial properties (100.0%); 5 of 5 researched properties (100.0%); 26,573 of 26,573 properties not yet researched (100.0%) · measured 2026-09-17

county

string | null

The county the property sits in.

Always in the record. Can be empty: The county name was not resolved for this parcel.

Montgomery County, MD — 6,159 of 6,159 published commercial properties (100.0%); 2,490 of 2,490 researched properties (100.0%); 3,669 of 3,669 properties not yet researched (100.0%) · measured 2026-09-17

Collin County, TX — 9,986 of 9,986 published commercial properties (100.0%); 10 of 10 researched properties (100.0%); 9,976 of 9,976 properties not yet researched (100.0%) · measured 2026-09-17

Dallas County, TX — 36,156 of 36,156 published commercial properties (100.0%); 30 of 30 researched properties (100.0%); 36,126 of 36,126 properties not yet researched (100.0%) · measured 2026-09-17

Denton County, TX — 8,594 of 8,594 published commercial properties (100.0%); 6 of 6 researched properties (100.0%); 8,588 of 8,588 properties not yet researched (100.0%) · measured 2026-09-17

Tarrant County, TX — 26,578 of 26,578 published commercial properties (100.0%); 5 of 5 researched properties (100.0%); 26,573 of 26,573 properties not yet researched (100.0%) · measured 2026-09-17

lat

number | null

Latitude of the parcel's centre point.

Always in the record. Can be empty: The parcel has no mapped boundary to take a centre point from.

Montgomery County, MD — 6,159 of 6,159 published commercial properties (100.0%); 2,490 of 2,490 researched properties (100.0%); 3,669 of 3,669 properties not yet researched (100.0%) · measured 2026-09-17

Collin County, TX — 9,986 of 9,986 published commercial properties (100.0%); 10 of 10 researched properties (100.0%); 9,976 of 9,976 properties not yet researched (100.0%) · measured 2026-09-17

Dallas County, TX — 36,156 of 36,156 published commercial properties (100.0%); 30 of 30 researched properties (100.0%); 36,126 of 36,126 properties not yet researched (100.0%) · measured 2026-09-17

Denton County, TX — 8,594 of 8,594 published commercial properties (100.0%); 6 of 6 researched properties (100.0%); 8,588 of 8,588 properties not yet researched (100.0%) · measured 2026-09-17

Tarrant County, TX — 26,578 of 26,578 published commercial properties (100.0%); 5 of 5 researched properties (100.0%); 26,573 of 26,573 properties not yet researched (100.0%) · measured 2026-09-17

lon

number | null

Longitude of the parcel's centre point.

Always in the record. Can be empty: The parcel has no mapped boundary to take a centre point from.

Montgomery County, MD — 6,159 of 6,159 published commercial properties (100.0%); 2,490 of 2,490 researched properties (100.0%); 3,669 of 3,669 properties not yet researched (100.0%) · measured 2026-09-17

Collin County, TX — 9,986 of 9,986 published commercial properties (100.0%); 10 of 10 researched properties (100.0%); 9,976 of 9,976 properties not yet researched (100.0%) · measured 2026-09-17

Dallas County, TX — 36,156 of 36,156 published commercial properties (100.0%); 30 of 30 researched properties (100.0%); 36,126 of 36,126 properties not yet researched (100.0%) · measured 2026-09-17

Denton County, TX — 8,594 of 8,594 published commercial properties (100.0%); 6 of 6 researched properties (100.0%); 8,588 of 8,588 properties not yet researched (100.0%) · measured 2026-09-17

Tarrant County, TX — 26,578 of 26,578 published commercial properties (100.0%); 5 of 5 researched properties (100.0%); 26,573 of 26,573 properties not yet researched (100.0%) · measured 2026-09-17

common_name

string | null

The name the property is known by — a building, park or campus name rather than its address.

Always in the record. Can be empty: Greenfinch's research has not produced it for this property. A property whose research has never run carries none of the researched fields.

Greenfinch researchYour plan

Montgomery County, MD — 6,159 of 6,159 published commercial properties (100.0%); 2,490 of 2,490 researched properties (100.0%); 3,669 of 3,669 properties not yet researched (100.0%) · measured 2026-09-17

Collin County, TX — 9,986 of 9,986 published commercial properties (100.0%); 10 of 10 researched properties (100.0%); 9,976 of 9,976 properties not yet researched (100.0%) · measured 2026-09-17

Dallas County, TX — 36,156 of 36,156 published commercial properties (100.0%); 30 of 30 researched properties (100.0%); 36,126 of 36,126 properties not yet researched (100.0%) · measured 2026-09-17

Denton County, TX — 8,594 of 8,594 published commercial properties (100.0%); 6 of 6 researched properties (100.0%); 8,588 of 8,588 properties not yet researched (100.0%) · measured 2026-09-17

Tarrant County, TX — 26,578 of 26,578 published commercial properties (100.0%); 5 of 5 researched properties (100.0%); 26,573 of 26,573 properties not yet researched (100.0%) · measured 2026-09-17

common_name_confidence

number | null

How confident Greenfinch is in that name, from 0 to 1. At or below 0.4 the name is an honest address-style stand-in rather than a name anyone uses, so do not present it as one.

Always in the record. Can be empty: No name was produced, so there is nothing to score.

Greenfinch researchYour plan

lot_sqft

number | null

The lot's area in square feet.

Always in the record. Can be empty: No source Greenfinch holds states a lot area for this parcel.

Montgomery County, MD — 6,157 of 6,159 published commercial properties (100.0%); 2,490 of 2,490 researched properties (100.0%); 3,667 of 3,669 properties not yet researched (99.9%) · measured 2026-09-17

Collin County, TX — 9,985 of 9,986 published commercial properties (100.0%); 10 of 10 researched properties (100.0%); 9,975 of 9,976 properties not yet researched (100.0%) · measured 2026-09-17

Dallas County, TX — 36,154 of 36,156 published commercial properties (100.0%); 30 of 30 researched properties (100.0%); 36,124 of 36,126 properties not yet researched (100.0%) · measured 2026-09-17

Denton County, TX — 8,594 of 8,594 published commercial properties (100.0%); 6 of 6 researched properties (100.0%); 8,588 of 8,588 properties not yet researched (100.0%) · measured 2026-09-17

Tarrant County, TX — 26,577 of 26,578 published commercial properties (100.0%); 5 of 5 researched properties (100.0%); 26,572 of 26,573 properties not yet researched (100.0%) · measured 2026-09-17

building_sqft

number | null

The building's area in square feet. A county figure at or under 100 square feet is a placeholder for a building nobody measured, not a size, so it is never delivered (the floor is inclusive: 100 itself is a placeholder).

Always in the record. Can be empty: No source Greenfinch holds states a building area — common on land with no building on it, and on a building whose county record carries only the placeholder figure.

Montgomery County, MD — 5,930 of 6,159 published commercial properties (96.3%); 2,487 of 2,490 researched properties (99.9%); 3,443 of 3,669 properties not yet researched (93.8%) · measured 2026-09-17

Collin County, TX — 8,996 of 9,986 published commercial properties (90.1%); 10 of 10 researched properties (100.0%); 8,986 of 9,976 properties not yet researched (90.1%) · measured 2026-09-17

Dallas County, TX — 34,545 of 36,156 published commercial properties (95.5%); 30 of 30 researched properties (100.0%); 34,515 of 36,126 properties not yet researched (95.5%) · measured 2026-09-17

Denton County, TX — 8,132 of 8,594 published commercial properties (94.6%); 6 of 6 researched properties (100.0%); 8,126 of 8,588 properties not yet researched (94.6%) · measured 2026-09-17

Tarrant County, TX — 25,084 of 26,578 published commercial properties (94.4%); 5 of 5 researched properties (100.0%); 25,079 of 26,573 properties not yet researched (94.4%) · measured 2026-09-17

building_sqft_is_planned

boolean

Whether that building area describes something planned or approved rather than something standing today.

Always in the record. Always carries a value.

Montgomery County, MD — 1 of 6,159 published commercial properties (0.0%); 1 of 2,490 researched properties (0.0%); 0 of 3,669 properties not yet researched (0.0%) · measured 2026-09-17

Collin County, TX — 0 of 9,986 published commercial properties (0.0%); 0 of 10 researched properties (0.0%); 0 of 9,976 properties not yet researched (0.0%) · measured 2026-09-17

Dallas County, TX — 0 of 36,156 published commercial properties (0.0%); 0 of 30 researched properties (0.0%); 0 of 36,126 properties not yet researched (0.0%) · measured 2026-09-17

Denton County, TX — 0 of 8,594 published commercial properties (0.0%); 0 of 6 researched properties (0.0%); 0 of 8,588 properties not yet researched (0.0%) · measured 2026-09-17

Tarrant County, TX — 0 of 26,578 published commercial properties (0.0%); 0 of 5 researched properties (0.0%); 0 of 26,573 properties not yet researched (0.0%) · measured 2026-09-17

year_built

number | null

The year the building was built. Where a county lists every building on a site, it is the year of the building with the most floor area, or, when that building's record gives no year, of the largest building that does.

Always in the record. Can be empty: No source Greenfinch holds states a year built.

Montgomery County, MD — 5,442 of 6,159 published commercial properties (88.4%); 2,371 of 2,490 researched properties (95.2%); 3,071 of 3,669 properties not yet researched (83.7%) · measured 2026-09-17

Collin County, TX — 9,374 of 9,986 published commercial properties (93.9%); 10 of 10 researched properties (100.0%); 9,364 of 9,976 properties not yet researched (93.9%) · measured 2026-09-17

Dallas County, TX — 35,002 of 36,156 published commercial properties (96.8%); 30 of 30 researched properties (100.0%); 34,972 of 36,126 properties not yet researched (96.8%) · measured 2026-09-17

Denton County, TX — 8,471 of 8,594 published commercial properties (98.6%); 6 of 6 researched properties (100.0%); 8,465 of 8,588 properties not yet researched (98.6%) · measured 2026-09-17

Tarrant County, TX — 26,364 of 26,578 published commercial properties (99.2%); 5 of 5 researched properties (100.0%); 26,359 of 26,573 properties not yet researched (99.2%) · measured 2026-09-17

num_floors

number | null

How many floors the building has above ground, as a whole number. Where a county lists every building on a site, it is the tallest building's floor count, rounded up to a whole floor.

Always in the record. Can be empty: No source Greenfinch holds states a floor count.

Montgomery County, MD — 5,112 of 6,159 published commercial properties (83.0%); 2,101 of 2,490 researched properties (84.4%); 3,011 of 3,669 properties not yet researched (82.1%) · measured 2026-09-17

Collin County, TX — 8,783 of 9,986 published commercial properties (88.0%); 10 of 10 researched properties (100.0%); 8,773 of 9,976 properties not yet researched (87.9%) · measured 2026-09-17

Dallas County, TX — 34,828 of 36,156 published commercial properties (96.3%); 30 of 30 researched properties (100.0%); 34,798 of 36,126 properties not yet researched (96.3%) · measured 2026-09-17

Denton County, TX — 7,725 of 8,594 published commercial properties (89.9%); 6 of 6 researched properties (100.0%); 7,719 of 8,588 properties not yet researched (89.9%) · measured 2026-09-17

Tarrant County, TX — 22,509 of 26,578 published commercial properties (84.7%); 5 of 5 researched properties (100.0%); 22,504 of 26,573 properties not yet researched (84.7%) · measured 2026-09-17

asset_category

string | null

What kind of property it is at the top level — office, retail, industrial, multifamily and so on.

Always in the record. Can be empty: Greenfinch's research has not produced it for this property. A property whose research has never run carries none of the researched fields.

Greenfinch research

Montgomery County, MD — 6,159 of 6,159 published commercial properties (100.0%); 2,490 of 2,490 researched properties (100.0%); 3,669 of 3,669 properties not yet researched (100.0%) · measured 2026-09-17

Collin County, TX — 9,986 of 9,986 published commercial properties (100.0%); 10 of 10 researched properties (100.0%); 9,976 of 9,976 properties not yet researched (100.0%) · measured 2026-09-17

Dallas County, TX — 36,156 of 36,156 published commercial properties (100.0%); 30 of 30 researched properties (100.0%); 36,126 of 36,126 properties not yet researched (100.0%) · measured 2026-09-17

Denton County, TX — 8,594 of 8,594 published commercial properties (100.0%); 6 of 6 researched properties (100.0%); 8,588 of 8,588 properties not yet researched (100.0%) · measured 2026-09-17

Tarrant County, TX — 26,578 of 26,578 published commercial properties (100.0%); 5 of 5 researched properties (100.0%); 26,573 of 26,573 properties not yet researched (100.0%) · measured 2026-09-17

asset_subcategory

string | null

The narrower kind within that category.

Always in the record. Can be empty: The category was decided but no narrower kind applied.

Greenfinch research

Montgomery County, MD — 5,998 of 6,159 published commercial properties (97.4%); 2,367 of 2,490 researched properties (95.1%); 3,631 of 3,669 properties not yet researched (99.0%) · measured 2026-09-17

Collin County, TX — 8,897 of 9,986 published commercial properties (89.1%); 6 of 10 researched properties (60.0%); 8,891 of 9,976 properties not yet researched (89.1%) · measured 2026-09-17

Dallas County, TX — 33,002 of 36,156 published commercial properties (91.3%); 29 of 30 researched properties (96.7%); 32,973 of 36,126 properties not yet researched (91.3%) · measured 2026-09-17

Denton County, TX — 5,362 of 8,594 published commercial properties (62.4%); 6 of 6 researched properties (100.0%); 5,356 of 8,588 properties not yet researched (62.4%) · measured 2026-09-17

Tarrant County, TX — 16,452 of 26,578 published commercial properties (61.9%); 4 of 5 researched properties (80.0%); 16,448 of 26,573 properties not yet researched (61.9%) · measured 2026-09-17

category_confidence

number | null

How confident Greenfinch is in that classification, from 0 to 1.

Always in the record. Can be empty: No classification was produced, so there is nothing to score.

Greenfinch research

beneficial_owner

string | null

Who really owns the property, once Greenfinch has looked through holding companies and trusts to the party that benefits.

Always in the record. Can be empty: Research has not run, or it could not reach a conclusion it was willing to publish.

Greenfinch researchA withheld owner

Montgomery County, MD — 2,346 of 6,159 published commercial properties (38.1%); 2,343 of 2,490 researched properties (94.1%); 3 of 3,669 properties not yet researched (0.1%) · measured 2026-09-17

Collin County, TX — 10 of 9,986 published commercial properties (0.1%); 10 of 10 researched properties (100.0%); 0 of 9,976 properties not yet researched (0.0%) · measured 2026-09-17

Dallas County, TX — 29 of 36,156 published commercial properties (0.1%); 29 of 30 researched properties (96.7%); 0 of 36,126 properties not yet researched (0.0%) · measured 2026-09-17

Denton County, TX — 6 of 8,594 published commercial properties (0.1%); 6 of 6 researched properties (100.0%); 0 of 8,588 properties not yet researched (0.0%) · measured 2026-09-17

Tarrant County, TX — 5 of 26,578 published commercial properties (0.0%); 5 of 5 researched properties (100.0%); 0 of 26,573 properties not yet researched (0.0%) · measured 2026-09-17

beneficial_owner_type

string | null

What kind of party that owner is — a private investor, an institution, a public body, an owner-occupier and so on.

Always in the record. Can be empty: No beneficial owner was concluded, so there is nothing to type.

Greenfinch researchA withheld owner

Montgomery County, MD — 2,285 of 6,159 published commercial properties (37.1%); 2,282 of 2,490 researched properties (91.6%); 3 of 3,669 properties not yet researched (0.1%) · measured 2026-09-17

Collin County, TX — 9 of 9,986 published commercial properties (0.1%); 9 of 10 researched properties (90.0%); 0 of 9,976 properties not yet researched (0.0%) · measured 2026-09-17

Dallas County, TX — 29 of 36,156 published commercial properties (0.1%); 29 of 30 researched properties (96.7%); 0 of 36,126 properties not yet researched (0.0%) · measured 2026-09-17

Denton County, TX — 6 of 8,594 published commercial properties (0.1%); 6 of 6 researched properties (100.0%); 0 of 8,588 properties not yet researched (0.0%) · measured 2026-09-17

Tarrant County, TX — 5 of 26,578 published commercial properties (0.0%); 5 of 5 researched properties (100.0%); 0 of 26,573 properties not yet researched (0.0%) · measured 2026-09-17

beneficial_owner_confidence

number | null

How confident Greenfinch is in that conclusion, from 0 to 1.

Always in the record. Can be empty: No beneficial owner was concluded, so there is nothing to score.

Greenfinch researchA withheld owner

ownership_type

string | null

How the property is held, in the terms a salesperson works in rather than a legal one.

Always in the record. Can be empty: Research has not reached a view on how the property is held.

Greenfinch research

Montgomery County, MD — 2,472 of 6,159 published commercial properties (40.1%); 2,469 of 2,490 researched properties (99.2%); 3 of 3,669 properties not yet researched (0.1%) · measured 2026-09-17

Collin County, TX — 10 of 9,986 published commercial properties (0.1%); 10 of 10 researched properties (100.0%); 0 of 9,976 properties not yet researched (0.0%) · measured 2026-09-17

Dallas County, TX — 30 of 36,156 published commercial properties (0.1%); 30 of 30 researched properties (100.0%); 0 of 36,126 properties not yet researched (0.0%) · measured 2026-09-17

Denton County, TX — 6 of 8,594 published commercial properties (0.1%); 6 of 6 researched properties (100.0%); 0 of 8,588 properties not yet researched (0.0%) · measured 2026-09-17

Tarrant County, TX — 5 of 26,578 published commercial properties (0.0%); 5 of 5 researched properties (100.0%); 0 of 26,573 properties not yet researched (0.0%) · measured 2026-09-17

management_company

string | null

The firm that manages the property day to day, where that is not the owner.

Always in the record. Can be empty: No managing firm was found, which is normal for owner-managed property.

Greenfinch research

Montgomery County, MD — 1,871 of 6,159 published commercial properties (30.4%); 1,869 of 2,490 researched properties (75.1%); 2 of 3,669 properties not yet researched (0.1%) · measured 2026-09-17

Collin County, TX — 5 of 9,986 published commercial properties (0.1%); 5 of 10 researched properties (50.0%); 0 of 9,976 properties not yet researched (0.0%) · measured 2026-09-17

Dallas County, TX — 19 of 36,156 published commercial properties (0.1%); 19 of 30 researched properties (63.3%); 0 of 36,126 properties not yet researched (0.0%) · measured 2026-09-17

Denton County, TX — 1 of 8,594 published commercial properties (0.0%); 1 of 6 researched properties (16.7%); 0 of 8,588 properties not yet researched (0.0%) · measured 2026-09-17

Tarrant County, TX — 3 of 26,578 published commercial properties (0.0%); 3 of 5 researched properties (60.0%); 0 of 26,573 properties not yet researched (0.0%) · measured 2026-09-17

registered_owner

string | null

The owner of record as the county states it, with the name normalised. It is the county's answer, not Greenfinch's conclusion about who really benefits.

Always in the record. Can be empty: The county names no owner for this parcel.

A withheld owner

Montgomery County, MD — 5,564 of 6,159 published commercial properties (90.3%); 2,154 of 2,490 researched properties (86.5%); 3,410 of 3,669 properties not yet researched (92.9%) · measured 2026-09-17

Collin County, TX — 9,738 of 9,986 published commercial properties (97.5%); 10 of 10 researched properties (100.0%); 9,728 of 9,976 properties not yet researched (97.5%) · measured 2026-09-17

Dallas County, TX — 36,156 of 36,156 published commercial properties (100.0%); 30 of 30 researched properties (100.0%); 36,126 of 36,126 properties not yet researched (100.0%) · measured 2026-09-17

Denton County, TX — 8,575 of 8,594 published commercial properties (99.8%); 6 of 6 researched properties (100.0%); 8,569 of 8,588 properties not yet researched (99.8%) · measured 2026-09-17

Tarrant County, TX — 26,562 of 26,578 published commercial properties (99.9%); 5 of 5 researched properties (100.0%); 26,557 of 26,573 properties not yet researched (99.9%) · measured 2026-09-17

assessed_total_val

number | null

The county's total assessed value for the parcel, in dollars.

Always in the record. Can be empty: The county's record carries no total assessed value.

Your plan

Montgomery County, MD — 6,159 of 6,159 published commercial properties (100.0%); 2,490 of 2,490 researched properties (100.0%); 3,669 of 3,669 properties not yet researched (100.0%) · measured 2026-09-17

Collin County, TX — 9,716 of 9,986 published commercial properties (97.3%); 10 of 10 researched properties (100.0%); 9,706 of 9,976 properties not yet researched (97.3%) · measured 2026-09-17

Dallas County, TX — 36,155 of 36,156 published commercial properties (100.0%); 30 of 30 researched properties (100.0%); 36,125 of 36,126 properties not yet researched (100.0%) · measured 2026-09-17

Denton County, TX — 8,584 of 8,594 published commercial properties (99.9%); 6 of 6 researched properties (100.0%); 8,578 of 8,588 properties not yet researched (99.9%) · measured 2026-09-17

Tarrant County, TX — 26,499 of 26,578 published commercial properties (99.7%); 5 of 5 researched properties (100.0%); 26,494 of 26,573 properties not yet researched (99.7%) · measured 2026-09-17

last_sale_date

string | null

When the property last sold, as the county's tax roll records the sale.

Always in the record. Can be empty: The county records no sale for this parcel.

Your plan

Montgomery County, MD — 4,260 of 6,159 published commercial properties (69.2%); 1,831 of 2,490 researched properties (73.5%); 2,429 of 3,669 properties not yet researched (66.2%) · measured 2026-09-17

Collin County, TX — 9,451 of 9,986 published commercial properties (94.6%); 10 of 10 researched properties (100.0%); 9,441 of 9,976 properties not yet researched (94.6%) · measured 2026-09-17

Dallas County, TX — 31,904 of 36,156 published commercial properties (88.2%); 28 of 30 researched properties (93.3%); 31,876 of 36,126 properties not yet researched (88.2%) · measured 2026-09-17

Denton County, TX — 7,100 of 8,594 published commercial properties (82.6%); 4 of 6 researched properties (66.7%); 7,096 of 8,588 properties not yet researched (82.6%) · measured 2026-09-17

Tarrant County, TX — 25,380 of 26,578 published commercial properties (95.5%); 5 of 5 researched properties (100.0%); 25,375 of 26,573 properties not yet researched (95.5%) · measured 2026-09-17

last_sale_price

number | null

What it sold for in that same sale, in dollars.

Always in the record. Can be empty: The county records no sale, or the sale records no price — common on a sale between related parties and in states that do not disclose prices.

Your plan

Montgomery County, MD — 5,568 of 6,159 published commercial properties (90.4%); 2,155 of 2,490 researched properties (86.5%); 3,413 of 3,669 properties not yet researched (93.0%) · measured 2026-09-17

Collin County, TX — 6,340 of 9,986 published commercial properties (63.5%); 8 of 10 researched properties (80.0%); 6,332 of 9,976 properties not yet researched (63.5%) · measured 2026-09-17

Dallas County, TX — 27,597 of 36,156 published commercial properties (76.3%); 27 of 30 researched properties (90.0%); 27,570 of 36,126 properties not yet researched (76.3%) · measured 2026-09-17

Denton County, TX — 6,416 of 8,594 published commercial properties (74.7%); 3 of 6 researched properties (50.0%); 6,413 of 8,588 properties not yet researched (74.7%) · measured 2026-09-17

Tarrant County, TX — 18,481 of 26,578 published commercial properties (69.5%); 4 of 5 researched properties (80.0%); 18,477 of 26,573 properties not yet researched (69.5%) · measured 2026-09-17

revenue_estimates

Record< string, { mid: number; low: number; high: number; tier: number } > | null

What the property is likely worth in annual revenue to you, per service category, as a low, middle and high figure with a confidence tier.

Always in the record. Can be empty: Too little is known about the property to estimate.

Greenfinch research

Montgomery County, MD — 6,157 of 6,159 published commercial properties (100.0%); 2,490 of 2,490 researched properties (100.0%); 3,667 of 3,669 properties not yet researched (99.9%) · measured 2026-09-17

Collin County, TX — 9,986 of 9,986 published commercial properties (100.0%); 10 of 10 researched properties (100.0%); 9,976 of 9,976 properties not yet researched (100.0%) · measured 2026-09-17

Dallas County, TX — 36,154 of 36,156 published commercial properties (100.0%); 30 of 30 researched properties (100.0%); 36,124 of 36,126 properties not yet researched (100.0%) · measured 2026-09-17

Denton County, TX — 8,594 of 8,594 published commercial properties (100.0%); 6 of 6 researched properties (100.0%); 8,588 of 8,588 properties not yet researched (100.0%) · measured 2026-09-17

Tarrant County, TX — 26,577 of 26,578 published commercial properties (100.0%); 5 of 5 researched properties (100.0%); 26,572 of 26,573 properties not yet researched (100.0%) · measured 2026-09-17

property_website

string | null

The property's own website, where it has one Greenfinch could confirm.

Always in the record. Can be empty: No website was found, or one was found but could not be confirmed as this property's.

Greenfinch research

Montgomery County, MD — 1,051 of 6,159 published commercial properties (17.1%); 1,051 of 2,490 researched properties (42.2%); 0 of 3,669 properties not yet researched (0.0%) · measured 2026-09-17

Collin County, TX — 7 of 9,986 published commercial properties (0.1%); 7 of 10 researched properties (70.0%); 0 of 9,976 properties not yet researched (0.0%) · measured 2026-09-17

Dallas County, TX — 18 of 36,156 published commercial properties (0.0%); 18 of 30 researched properties (60.0%); 0 of 36,126 properties not yet researched (0.0%) · measured 2026-09-17

Denton County, TX — 6 of 8,594 published commercial properties (0.1%); 6 of 6 researched properties (100.0%); 0 of 8,588 properties not yet researched (0.0%) · measured 2026-09-17

Tarrant County, TX — 3 of 26,578 published commercial properties (0.0%); 3 of 5 researched properties (60.0%); 0 of 26,573 properties not yet researched (0.0%) · measured 2026-09-17

ai_rationale

string | null

Greenfinch's written account of the property — what it is, who is behind it, and why it was classified the way it was. The full text, not the shortened form the app shows before a property is revealed and not the shortened form a property search returns.

Always in the record. Can be empty: Greenfinch's research has not produced it for this property. A property whose research has never run carries none of the researched fields.

Greenfinch research

Montgomery County, MD — 2,491 of 6,159 published commercial properties (40.4%); 2,488 of 2,490 researched properties (99.9%); 3 of 3,669 properties not yet researched (0.1%) · measured 2026-09-17

Collin County, TX — 10 of 9,986 published commercial properties (0.1%); 10 of 10 researched properties (100.0%); 0 of 9,976 properties not yet researched (0.0%) · measured 2026-09-17

Dallas County, TX — 30 of 36,156 published commercial properties (0.1%); 30 of 30 researched properties (100.0%); 0 of 36,126 properties not yet researched (0.0%) · measured 2026-09-17

Denton County, TX — 6 of 8,594 published commercial properties (0.1%); 6 of 6 researched properties (100.0%); 0 of 8,588 properties not yet researched (0.0%) · measured 2026-09-17

Tarrant County, TX — 5 of 26,578 published commercial properties (0.0%); 5 of 5 researched properties (100.0%); 0 of 26,573 properties not yet researched (0.0%) · measured 2026-09-17

property_phone

string | null

A phone number for the property itself, such as a leasing or management office line.

Always in the record. Can be empty: No number was found for the property.

Greenfinch research

Montgomery County, MD — 1,866 of 6,159 published commercial properties (30.3%); 1,866 of 2,490 researched properties (74.9%); 0 of 3,669 properties not yet researched (0.0%) · measured 2026-09-17

Collin County, TX — 10 of 9,986 published commercial properties (0.1%); 10 of 10 researched properties (100.0%); 0 of 9,976 properties not yet researched (0.0%) · measured 2026-09-17

Dallas County, TX — 30 of 36,156 published commercial properties (0.1%); 30 of 30 researched properties (100.0%); 0 of 36,126 properties not yet researched (0.0%) · measured 2026-09-17

Denton County, TX — 6 of 8,594 published commercial properties (0.1%); 6 of 6 researched properties (100.0%); 0 of 8,588 properties not yet researched (0.0%) · measured 2026-09-17

Tarrant County, TX — 5 of 26,578 published commercial properties (0.0%); 5 of 5 researched properties (100.0%); 0 of 26,573 properties not yet researched (0.0%) · measured 2026-09-17

property_phone_confidence

number | null

How confident Greenfinch is in that number, from 0 to 1.

Always in the record. Can be empty: No number was found, so there is nothing to score.

Greenfinch research

last_enriched_at

string | null

When Greenfinch's research last ran on this property, so you can tell fresh records from stale ones. Empty is the honest signal that research has never run.

Always in the record. Can be empty: Research has never run on this property.

Montgomery County, MD — 2,490 of 6,159 published commercial properties (40.4%); 2,490 of 2,490 researched properties (100.0%); 0 of 3,669 properties not yet researched (0.0%) · measured 2026-09-17

Collin County, TX — 10 of 9,986 published commercial properties (0.1%); 10 of 10 researched properties (100.0%); 0 of 9,976 properties not yet researched (0.0%) · measured 2026-09-17

Dallas County, TX — 30 of 36,156 published commercial properties (0.1%); 30 of 30 researched properties (100.0%); 0 of 36,126 properties not yet researched (0.0%) · measured 2026-09-17

Denton County, TX — 6 of 8,594 published commercial properties (0.1%); 6 of 6 researched properties (100.0%); 0 of 8,588 properties not yet researched (0.0%) · measured 2026-09-17

Tarrant County, TX — 5 of 26,578 published commercial properties (0.0%); 5 of 5 researched properties (100.0%); 0 of 26,573 properties not yet researched (0.0%) · measured 2026-09-17

deep_link_url

string

A link straight to this property in the Greenfinch app, for a person following up from inside your own system.

Always in the record. Always carries a value.

Montgomery County, MD — 6,159 of 6,159 published commercial properties (100.0%); 2,490 of 2,490 researched properties (100.0%); 3,669 of 3,669 properties not yet researched (100.0%) · measured 2026-09-17

Collin County, TX — 9,986 of 9,986 published commercial properties (100.0%); 10 of 10 researched properties (100.0%); 9,976 of 9,976 properties not yet researched (100.0%) · measured 2026-09-17

Dallas County, TX — 36,156 of 36,156 published commercial properties (100.0%); 30 of 30 researched properties (100.0%); 36,126 of 36,126 properties not yet researched (100.0%) · measured 2026-09-17

Denton County, TX — 8,594 of 8,594 published commercial properties (100.0%); 6 of 6 researched properties (100.0%); 8,588 of 8,588 properties not yet researched (100.0%) · measured 2026-09-17

Tarrant County, TX — 26,578 of 26,578 published commercial properties (100.0%); 5 of 5 researched properties (100.0%); 26,573 of 26,573 properties not yet researched (100.0%) · measured 2026-09-17

effective_year_built

number | null

The year the county treats the building as dating from once renovations are taken into account — later than the year built when the building has been substantially updated. On a site with several buildings it follows the same rule as the year built: the building with the most floor area, or, when that building's record gives no effective year, the largest building that does.

Always in the record. Can be empty: It is filled only where a county publishes it, and most counties do not carry it today; where one does, it is often filled for only some of its buildings. Where a county does publish it, its records say nothing about it for this property.

Rarely carries a value today

Montgomery County, MD — 0 of 6,159 published commercial properties (0.0%); 0 of 2,490 researched properties (0.0%); 0 of 3,669 properties not yet researched (0.0%) · measured 2026-09-17

Collin County, TX — 4 of 9,986 published commercial properties (0.0%); 0 of 10 researched properties (0.0%); 4 of 9,976 properties not yet researched (0.0%) · measured 2026-09-17

Dallas County, TX — 7,038 of 36,156 published commercial properties (19.5%); 5 of 30 researched properties (16.7%); 7,033 of 36,126 properties not yet researched (19.5%) · measured 2026-09-17

Denton County, TX — 10 of 8,594 published commercial properties (0.1%); 0 of 6 researched properties (0.0%); 10 of 8,588 properties not yet researched (0.1%) · measured 2026-09-17

Tarrant County, TX — 6,947 of 26,578 published commercial properties (26.1%); 0 of 5 researched properties (0.0%); 6,947 of 26,573 properties not yet researched (26.1%) · measured 2026-09-17

heating_type

string | null

The kind of heating system the building uses: Forced Air Furnace, Heat Pump, Hot Water or Steam Boiler, Electric Resistance, Rooftop Package Unit, Radiant, Space or Wall Heater, None or Other. On a site with several buildings it is the value covering the most building floor area.

Always in the record. Can be empty: It is filled only where a county publishes it, and most counties do not carry it today; where one does, it is often filled for only some of its buildings. Where a county does publish it, its records say nothing about it for this property.

Rarely carries a value today

Montgomery County, MD — 0 of 6,159 published commercial properties (0.0%); 0 of 2,490 researched properties (0.0%); 0 of 3,669 properties not yet researched (0.0%) · measured 2026-09-17

Collin County, TX — 0 of 9,986 published commercial properties (0.0%); 0 of 10 researched properties (0.0%); 0 of 9,976 properties not yet researched (0.0%) · measured 2026-09-17

Dallas County, TX — 29,112 of 36,156 published commercial properties (80.5%); 25 of 30 researched properties (83.3%); 29,087 of 36,126 properties not yet researched (80.5%) · measured 2026-09-17

Denton County, TX — 0 of 8,594 published commercial properties (0.0%); 0 of 6 researched properties (0.0%); 0 of 8,588 properties not yet researched (0.0%) · measured 2026-09-17

Tarrant County, TX — 154 of 26,578 published commercial properties (0.6%); 0 of 5 researched properties (0.0%); 154 of 26,573 properties not yet researched (0.6%) · measured 2026-09-17

cooling_type

string | null

The kind of cooling system the building uses: Central Air, Rooftop Package Unit, Chilled Water, Heat Pump, Packaged Terminal, Evaporative, Window or Wall Unit, None or Other. On a site with several buildings it is the value covering the most building floor area.

Always in the record. Can be empty: It is filled only where a county publishes it, and most counties do not carry it today; where one does, it is often filled for only some of its buildings. Where a county does publish it, its records say nothing about it for this property.

Rarely carries a value today

Montgomery County, MD — 0 of 6,159 published commercial properties (0.0%); 0 of 2,490 researched properties (0.0%); 0 of 3,669 properties not yet researched (0.0%) · measured 2026-09-17

Collin County, TX — 0 of 9,986 published commercial properties (0.0%); 0 of 10 researched properties (0.0%); 0 of 9,976 properties not yet researched (0.0%) · measured 2026-09-17

Dallas County, TX — 29,041 of 36,156 published commercial properties (80.3%); 28 of 30 researched properties (93.3%); 29,013 of 36,126 properties not yet researched (80.3%) · measured 2026-09-17

Denton County, TX — 0 of 8,594 published commercial properties (0.0%); 0 of 6 researched properties (0.0%); 0 of 8,588 properties not yet researched (0.0%) · measured 2026-09-17

Tarrant County, TX — 146 of 26,578 published commercial properties (0.5%); 0 of 5 researched properties (0.0%); 146 of 26,573 properties not yet researched (0.5%) · measured 2026-09-17

primary_construction_type

string | null

What the building's structure is mainly made of: Wood Frame, Masonry, Concrete, Steel Frame, Pre-Engineered Metal, Tilt-Up, Mixed or Other. On a site with several buildings it is the value covering the most building floor area.

Always in the record. Can be empty: It is filled only where a county publishes it, and most counties do not carry it today; where one does, it is often filled for only some of its buildings. Where a county does publish it, its records say nothing about it for this property.

Rarely carries a value today

Montgomery County, MD — 0 of 6,159 published commercial properties (0.0%); 0 of 2,490 researched properties (0.0%); 0 of 3,669 properties not yet researched (0.0%) · measured 2026-09-17

Collin County, TX — 0 of 9,986 published commercial properties (0.0%); 0 of 10 researched properties (0.0%); 0 of 9,976 properties not yet researched (0.0%) · measured 2026-09-17

Dallas County, TX — 34,426 of 36,156 published commercial properties (95.2%); 27 of 30 researched properties (90.0%); 34,399 of 36,126 properties not yet researched (95.2%) · measured 2026-09-17

Denton County, TX — 0 of 8,594 published commercial properties (0.0%); 0 of 6 researched properties (0.0%); 0 of 8,588 properties not yet researched (0.0%) · measured 2026-09-17

Tarrant County, TX — 0 of 26,578 published commercial properties (0.0%); 0 of 5 researched properties (0.0%); 0 of 26,573 properties not yet researched (0.0%) · measured 2026-09-17

exterior_wall_material

string | null

What the building's outside walls are faced with: Brick, Stucco or EIFS, Vinyl or Aluminum Siding, Wood Siding, Concrete or Block, Metal Panel, Glass Curtain Wall, Stone or Other. On a site with several buildings it is the value covering the most building floor area.

Always in the record. Can be empty: It is filled only where a county publishes it, and most counties do not carry it today; where one does, it is often filled for only some of its buildings. Where a county does publish it, its records say nothing about it for this property.

Rarely carries a value today

Montgomery County, MD — 0 of 6,159 published commercial properties (0.0%); 0 of 2,490 researched properties (0.0%); 0 of 3,669 properties not yet researched (0.0%) · measured 2026-09-17

Collin County, TX — 0 of 9,986 published commercial properties (0.0%); 0 of 10 researched properties (0.0%); 0 of 9,976 properties not yet researched (0.0%) · measured 2026-09-17

Dallas County, TX — 581 of 36,156 published commercial properties (1.6%); 0 of 30 researched properties (0.0%); 581 of 36,126 properties not yet researched (1.6%) · measured 2026-09-17

Denton County, TX — 169 of 8,594 published commercial properties (2.0%); 0 of 6 researched properties (0.0%); 169 of 8,588 properties not yet researched (2.0%) · measured 2026-09-17

Tarrant County, TX — 0 of 26,578 published commercial properties (0.0%); 0 of 5 researched properties (0.0%); 0 of 26,573 properties not yet researched (0.0%) · measured 2026-09-17

foundation_type

string | null

What the building stands on: Slab on Grade, Crawl Space, Full Basement, Partial Basement, Pier and Beam, Piling or Other. On a site with several buildings it is the value covering the most building floor area.

Always in the record. Can be empty: It is filled only where a county publishes it, and most counties do not carry it today; where one does, it is often filled for only some of its buildings. Where a county does publish it, its records say nothing about it for this property.

Rarely carries a value today

Montgomery County, MD — 0 of 6,159 published commercial properties (0.0%); 0 of 2,490 researched properties (0.0%); 0 of 3,669 properties not yet researched (0.0%) · measured 2026-09-17

Collin County, TX — 0 of 9,986 published commercial properties (0.0%); 0 of 10 researched properties (0.0%); 0 of 9,976 properties not yet researched (0.0%) · measured 2026-09-17

Dallas County, TX — 33,451 of 36,156 published commercial properties (92.5%); 27 of 30 researched properties (90.0%); 33,424 of 36,126 properties not yet researched (92.5%) · measured 2026-09-17

Denton County, TX — 0 of 8,594 published commercial properties (0.0%); 0 of 6 researched properties (0.0%); 0 of 8,588 properties not yet researched (0.0%) · measured 2026-09-17

Tarrant County, TX — 0 of 26,578 published commercial properties (0.0%); 0 of 5 researched properties (0.0%); 0 of 26,573 properties not yet researched (0.0%) · measured 2026-09-17

roof_cover

string | null

What the roof's surface is made of: Asphalt Shingle, Metal, Built-Up or Modified Bitumen, Single-Ply Membrane, Tile, Wood Shake or Shingle, Slate or Other. On a site with several buildings it is the value covering the most building floor area.

Always in the record. Can be empty: It is filled only where a county publishes it, and most counties do not carry it today; where one does, it is often filled for only some of its buildings. Where a county does publish it, its records say nothing about it for this property.

Rarely carries a value today

Montgomery County, MD — 0 of 6,159 published commercial properties (0.0%); 0 of 2,490 researched properties (0.0%); 0 of 3,669 properties not yet researched (0.0%) · measured 2026-09-17

Collin County, TX — 0 of 9,986 published commercial properties (0.0%); 0 of 10 researched properties (0.0%); 0 of 9,976 properties not yet researched (0.0%) · measured 2026-09-17

Dallas County, TX — 421 of 36,156 published commercial properties (1.2%); 0 of 30 researched properties (0.0%); 421 of 36,126 properties not yet researched (1.2%) · measured 2026-09-17

Denton County, TX — 0 of 8,594 published commercial properties (0.0%); 0 of 6 researched properties (0.0%); 0 of 8,588 properties not yet researched (0.0%) · measured 2026-09-17

Tarrant County, TX — 0 of 26,578 published commercial properties (0.0%); 0 of 5 researched properties (0.0%); 0 of 26,573 properties not yet researched (0.0%) · measured 2026-09-17

roof_shape

string | null

The roof's shape, as one value from a fixed list of roof shapes — among them Gable, Hip, Shed, Mixed and Other. On a site with several buildings it is the value covering the most building floor area.

Always in the record. Can be empty: It is filled only where a county publishes it, and most counties do not carry it today; where one does, it is often filled for only some of its buildings. Where a county does publish it, its records say nothing about it for this property.

Rarely carries a value today

Montgomery County, MD — 0 of 6,159 published commercial properties (0.0%); 0 of 2,490 researched properties (0.0%); 0 of 3,669 properties not yet researched (0.0%) · measured 2026-09-17

Collin County, TX — 0 of 9,986 published commercial properties (0.0%); 0 of 10 researched properties (0.0%); 0 of 9,976 properties not yet researched (0.0%) · measured 2026-09-17

Dallas County, TX — 425 of 36,156 published commercial properties (1.2%); 0 of 30 researched properties (0.0%); 425 of 36,126 properties not yet researched (1.2%) · measured 2026-09-17

Denton County, TX — 0 of 8,594 published commercial properties (0.0%); 0 of 6 researched properties (0.0%); 0 of 8,588 properties not yet researched (0.0%) · measured 2026-09-17

Tarrant County, TX — 0 of 26,578 published commercial properties (0.0%); 0 of 5 researched properties (0.0%); 0 of 26,573 properties not yet researched (0.0%) · measured 2026-09-17

quality_grade

string | null

Assessment quality grade

The construction-quality grade the county assessor recorded in order to value the building for tax: Excellent, Very Good, Good, Average, Fair, Poor or Other, on that county's own scale. It is a tax-valuation tier, not an inspection and not a statement about the building's condition today — nobody visited the property, and the grade may be years old — so use it as a rough tier for sizing work, never as a report of defects. On a site with several buildings it is the value covering the most building floor area.

Always in the record. Can be empty: It is filled only where a county publishes it, and most counties do not carry it today; where one does, it is often filled for only some of its buildings. Where a county does publish it, its records say nothing about it for this property.

Rarely carries a value today

Montgomery County, MD — 0 of 6,159 published commercial properties (0.0%); 0 of 2,490 researched properties (0.0%); 0 of 3,669 properties not yet researched (0.0%) · measured 2026-09-17

Collin County, TX — 6,861 of 9,986 published commercial properties (68.7%); 6 of 10 researched properties (60.0%); 6,855 of 9,976 properties not yet researched (68.7%) · measured 2026-09-17

Dallas County, TX — 33,810 of 36,156 published commercial properties (93.5%); 30 of 30 researched properties (100.0%); 33,780 of 36,126 properties not yet researched (93.5%) · measured 2026-09-17

Denton County, TX — 410 of 8,594 published commercial properties (4.8%); 0 of 6 researched properties (0.0%); 410 of 8,588 properties not yet researched (4.8%) · measured 2026-09-17

Tarrant County, TX — 0 of 26,578 published commercial properties (0.0%); 0 of 5 researched properties (0.0%); 0 of 26,573 properties not yet researched (0.0%) · measured 2026-09-17

has_pool

boolean | null

Whether the property has a swimming pool or water feature: true when at least one building has one, false only when the county's records say there is none.

Always in the record. Can be empty: It is filled only where a county publishes it, and most counties do not carry it today; where one does, it is often filled for only some of its buildings. Where a county does publish it, its records do not say either way for this property; a blank is never read as no.

Rarely carries a value today

Montgomery County, MD — 0 of 6,159 published commercial properties (0.0%); 0 of 2,490 researched properties (0.0%); 0 of 3,669 properties not yet researched (0.0%) · measured 2026-09-17

Collin County, TX — 2,990 of 9,986 published commercial properties (29.9%); 5 of 10 researched properties (50.0%); 2,985 of 9,976 properties not yet researched (29.9%) · measured 2026-09-17

Dallas County, TX — 509 of 36,156 published commercial properties (1.4%); 0 of 30 researched properties (0.0%); 509 of 36,126 properties not yet researched (1.4%) · measured 2026-09-17

Denton County, TX — 5,322 of 8,594 published commercial properties (61.9%); 5 of 6 researched properties (83.3%); 5,317 of 8,588 properties not yet researched (61.9%) · measured 2026-09-17

Tarrant County, TX — 15,121 of 26,578 published commercial properties (56.9%); 5 of 5 researched properties (100.0%); 15,116 of 26,573 properties not yet researched (56.9%) · measured 2026-09-17

has_sprinklers

boolean | null

Whether the property has an automatic fire sprinkler system: true when at least one building has one, false only when the county's records say there is none.

Always in the record. Can be empty: It is filled only where a county publishes it, and most counties do not carry it today; where one does, it is often filled for only some of its buildings. Where a county does publish it, its records do not say either way for this property; a blank is never read as no.

Rarely carries a value today

Montgomery County, MD — 0 of 6,159 published commercial properties (0.0%); 0 of 2,490 researched properties (0.0%); 0 of 3,669 properties not yet researched (0.0%) · measured 2026-09-17

Collin County, TX — 0 of 9,986 published commercial properties (0.0%); 0 of 10 researched properties (0.0%); 0 of 9,976 properties not yet researched (0.0%) · measured 2026-09-17

Dallas County, TX — 443 of 36,156 published commercial properties (1.2%); 0 of 30 researched properties (0.0%); 443 of 36,126 properties not yet researched (1.2%) · measured 2026-09-17

Denton County, TX — 0 of 8,594 published commercial properties (0.0%); 0 of 6 researched properties (0.0%); 0 of 8,588 properties not yet researched (0.0%) · measured 2026-09-17

Tarrant County, TX — 0 of 26,578 published commercial properties (0.0%); 0 of 5 researched properties (0.0%); 0 of 26,573 properties not yet researched (0.0%) · measured 2026-09-17

building_attributes_basis

"per_building" | "main_building_only" | null

How this property's building details were put together: per_building when the county lists each building on the site and Greenfinch combined them; main_building_only when they come from one main-building record.

Always in the record. Can be empty: The property carries none of the building details above: every one of them is empty. The footprint below does not count towards it.

Montgomery County, MD — 5,713 of 6,159 published commercial properties (92.8%); 2,428 of 2,490 researched properties (97.5%); 3,285 of 3,669 properties not yet researched (89.5%) · measured 2026-09-17

Collin County, TX — 9,469 of 9,986 published commercial properties (94.8%); 10 of 10 researched properties (100.0%); 9,459 of 9,976 properties not yet researched (94.8%) · measured 2026-09-17

Dallas County, TX — 35,098 of 36,156 published commercial properties (97.1%); 30 of 30 researched properties (100.0%); 35,068 of 36,126 properties not yet researched (97.1%) · measured 2026-09-17

Denton County, TX — 8,481 of 8,594 published commercial properties (98.7%); 6 of 6 researched properties (100.0%); 8,475 of 8,588 properties not yet researched (98.7%) · measured 2026-09-17

Tarrant County, TX — 26,482 of 26,578 published commercial properties (99.6%); 5 of 5 researched properties (100.0%); 26,477 of 26,573 properties not yet researched (99.6%) · measured 2026-09-17

footprint_area

number | null

The area the building covers on the ground, in square feet: the figure Greenfinch's property page shows. footprint_area_source says where it comes from. It has no detail object.

Always in the record. Can be empty: Greenfinch holds no footprint for this property, or your plan does not include premium property data, in which case it is withheld with its source.

Your plan

Montgomery County, MD — 5,666 of 6,159 published commercial properties (92.0%); 2,377 of 2,490 researched properties (95.5%); 3,289 of 3,669 properties not yet researched (89.6%) · measured 2026-09-17

Collin County, TX — 8,996 of 9,986 published commercial properties (90.1%); 10 of 10 researched properties (100.0%); 8,986 of 9,976 properties not yet researched (90.1%) · measured 2026-09-17

Dallas County, TX — 34,545 of 36,156 published commercial properties (95.5%); 30 of 30 researched properties (100.0%); 34,515 of 36,126 properties not yet researched (95.5%) · measured 2026-09-17

Denton County, TX — 8,132 of 8,594 published commercial properties (94.6%); 6 of 6 researched properties (100.0%); 8,126 of 8,588 properties not yet researched (94.6%) · measured 2026-09-17

Tarrant County, TX — 25,084 of 26,578 published commercial properties (94.4%); 5 of 5 researched properties (100.0%); 25,079 of 26,573 properties not yet researched (94.4%) · measured 2026-09-17

footprint_area_source

"county_record" | "measured" | "estimate" | null

Where the footprint comes from: measured when it is taken from the building's outline on a map; estimate when it is the building's floor area divided by its floor count; county_record when it is the county's recorded foundation area. No county's recorded foundation area feeds this figure yet, so county_record does not occur today; every property reads measured, estimate or empty.

Always in the record. Can be empty: The footprint is empty, or withheld because your plan does not include premium property data.

Your plan

Montgomery County, MD — 5,666 of 6,159 published commercial properties (92.0%); 2,377 of 2,490 researched properties (95.5%); 3,289 of 3,669 properties not yet researched (89.6%) · measured 2026-09-17

Collin County, TX — 8,996 of 9,986 published commercial properties (90.1%); 10 of 10 researched properties (100.0%); 8,986 of 9,976 properties not yet researched (90.1%) · measured 2026-09-17

Dallas County, TX — 34,545 of 36,156 published commercial properties (95.5%); 30 of 30 researched properties (100.0%); 34,515 of 36,126 properties not yet researched (95.5%) · measured 2026-09-17

Denton County, TX — 8,132 of 8,594 published commercial properties (94.6%); 6 of 6 researched properties (100.0%); 8,126 of 8,588 properties not yet researched (94.6%) · measured 2026-09-17

Tarrant County, TX — 25,084 of 26,578 published commercial properties (94.4%); 5 of 5 researched properties (100.0%); 25,079 of 26,573 properties not yet researched (94.4%) · measured 2026-09-17

lease_type

string | null

What Greenfinch's research believes the property's lease arrangement is — triple_net, gross, modified_gross, ground_lease, sale_leaseback or owner_occupied — because it says who usually pays for upkeep. Recorded only when a page research read (a leasing flyer, a listing, an article) states it; the property's detail carries that page and its words.

Always in the record. Can be empty: Research has not found a page that states the lease arrangement, which is most properties; the lease-type field is not switched on yet; or the value is owner_occupied or sale_leaseback, which describe who owns the property and are withheld until its research is unlocked for you.

Montgomery County, MD — 0 of 6,159 published commercial properties (0.0%); 0 of 2,490 researched properties (0.0%); 0 of 3,669 properties not yet researched (0.0%) · measured 2026-09-17

Collin County, TX — 0 of 9,986 published commercial properties (0.0%); 0 of 10 researched properties (0.0%); 0 of 9,976 properties not yet researched (0.0%) · measured 2026-09-17

Dallas County, TX — 0 of 36,156 published commercial properties (0.0%); 0 of 30 researched properties (0.0%); 0 of 36,126 properties not yet researched (0.0%) · measured 2026-09-17

Denton County, TX — 0 of 8,594 published commercial properties (0.0%); 0 of 6 researched properties (0.0%); 0 of 8,588 properties not yet researched (0.0%) · measured 2026-09-17

Tarrant County, TX — 0 of 26,578 published commercial properties (0.0%); 0 of 5 researched properties (0.0%); 0 of 26,573 properties not yet researched (0.0%) · measured 2026-09-17

last_transfer_date

string | null

A later change of title the county records after the last sale — a sale, a move into a related company, an inheritance or a correction.

Always in the record. Can be empty: The county records no transfer after the last sale, or only one in the same month as the sale.

Your plan

Organizations (firms)

The firms attached to those properties as owners or managers, with the firm's own identity and size.

Fields

11 fields delivered

greenfinch_organization_ididentifies the row

string

Greenfinch's identifier for the firm, stable across syncs and the key every link row uses.

Always in the record. Always carries a value.

Montgomery County, MD — 629 of 629 researched firms (100.0%); 1,134 of 1,134 firms awaiting research (100.0%); 1,763 of 1,763 firms linked to a published property (100.0%) · measured 2026-09-17

Collin County, TX — 9 of 9 researched firms (100.0%); 9 of 9 firms awaiting research (100.0%); 18 of 18 firms linked to a published property (100.0%) · measured 2026-09-17

Dallas County, TX — 17 of 17 researched firms (100.0%); 24 of 24 firms awaiting research (100.0%); 41 of 41 firms linked to a published property (100.0%) · measured 2026-09-17

Denton County, TX — 5 of 5 researched firms (100.0%); 2 of 2 firms awaiting research (100.0%); 7 of 7 firms linked to a published property (100.0%) · measured 2026-09-17

Tarrant County, TX — 5 of 5 researched firms (100.0%); 7 of 7 firms awaiting research (100.0%); 12 of 12 firms linked to a published property (100.0%) · measured 2026-09-17

name

string | null

The firm's name, resolved into one answer from everything Greenfinch holds.

Always in the record. Can be empty: Greenfinch holds the firm as a linked record without a settled name.

Montgomery County, MD — 629 of 629 researched firms (100.0%); 1,134 of 1,134 firms awaiting research (100.0%); 1,763 of 1,763 firms linked to a published property (100.0%) · measured 2026-09-17

Collin County, TX — 9 of 9 researched firms (100.0%); 9 of 9 firms awaiting research (100.0%); 18 of 18 firms linked to a published property (100.0%) · measured 2026-09-17

Dallas County, TX — 17 of 17 researched firms (100.0%); 24 of 24 firms awaiting research (100.0%); 41 of 41 firms linked to a published property (100.0%) · measured 2026-09-17

Denton County, TX — 5 of 5 researched firms (100.0%); 2 of 2 firms awaiting research (100.0%); 7 of 7 firms linked to a published property (100.0%) · measured 2026-09-17

Tarrant County, TX — 5 of 5 researched firms (100.0%); 7 of 7 firms awaiting research (100.0%); 12 of 12 firms linked to a published property (100.0%) · measured 2026-09-17

domain

string | null

The firm's own web domain.

Always in the record. Can be empty: No domain was resolved for the firm.

Montgomery County, MD — 613 of 629 researched firms (97.5%); 165 of 1,134 firms awaiting research (14.6%); 778 of 1,763 firms linked to a published property (44.1%) · measured 2026-09-17

Collin County, TX — 9 of 9 researched firms (100.0%); 2 of 9 firms awaiting research (22.2%); 11 of 18 firms linked to a published property (61.1%) · measured 2026-09-17

Dallas County, TX — 16 of 17 researched firms (94.1%); 5 of 24 firms awaiting research (20.8%); 21 of 41 firms linked to a published property (51.2%) · measured 2026-09-17

Denton County, TX — 5 of 5 researched firms (100.0%); 1 of 2 firms awaiting research (50.0%); 6 of 7 firms linked to a published property (85.7%) · measured 2026-09-17

Tarrant County, TX — 5 of 5 researched firms (100.0%); 2 of 7 firms awaiting research (28.6%); 7 of 12 firms linked to a published property (58.3%) · measured 2026-09-17

city

string | null

The city of the firm's own address.

Always in the record. Can be empty: Greenfinch holds no address for the firm.

Montgomery County, MD — 628 of 629 researched firms (99.8%); 1,080 of 1,134 firms awaiting research (95.2%); 1,708 of 1,763 firms linked to a published property (96.9%) · measured 2026-09-17

Collin County, TX — 9 of 9 researched firms (100.0%); 9 of 9 firms awaiting research (100.0%); 18 of 18 firms linked to a published property (100.0%) · measured 2026-09-17

Dallas County, TX — 17 of 17 researched firms (100.0%); 24 of 24 firms awaiting research (100.0%); 41 of 41 firms linked to a published property (100.0%) · measured 2026-09-17

Denton County, TX — 5 of 5 researched firms (100.0%); 2 of 2 firms awaiting research (100.0%); 7 of 7 firms linked to a published property (100.0%) · measured 2026-09-17

Tarrant County, TX — 5 of 5 researched firms (100.0%); 7 of 7 firms awaiting research (100.0%); 12 of 12 firms linked to a published property (100.0%) · measured 2026-09-17

state

string | null

The state of the firm's own address.

Always in the record. Can be empty: Greenfinch holds no address for the firm.

Montgomery County, MD — 625 of 629 researched firms (99.4%); 1,120 of 1,134 firms awaiting research (98.8%); 1,745 of 1,763 firms linked to a published property (99.0%) · measured 2026-09-17

Collin County, TX — 9 of 9 researched firms (100.0%); 9 of 9 firms awaiting research (100.0%); 18 of 18 firms linked to a published property (100.0%) · measured 2026-09-17

Dallas County, TX — 17 of 17 researched firms (100.0%); 24 of 24 firms awaiting research (100.0%); 41 of 41 firms linked to a published property (100.0%) · measured 2026-09-17

Denton County, TX — 5 of 5 researched firms (100.0%); 2 of 2 firms awaiting research (100.0%); 7 of 7 firms linked to a published property (100.0%) · measured 2026-09-17

Tarrant County, TX — 5 of 5 researched firms (100.0%); 7 of 7 firms awaiting research (100.0%); 12 of 12 firms linked to a published property (100.0%) · measured 2026-09-17

postal_code

string | null

The postal code of the firm's own address.

Always in the record. Can be empty: Greenfinch holds no address for the firm.

Montgomery County, MD — 312 of 629 researched firms (49.6%); 968 of 1,134 firms awaiting research (85.4%); 1,280 of 1,763 firms linked to a published property (72.6%) · measured 2026-09-17

Collin County, TX — 4 of 9 researched firms (44.4%); 8 of 9 firms awaiting research (88.9%); 12 of 18 firms linked to a published property (66.7%) · measured 2026-09-17

Dallas County, TX — 12 of 17 researched firms (70.6%); 19 of 24 firms awaiting research (79.2%); 31 of 41 firms linked to a published property (75.6%) · measured 2026-09-17

Denton County, TX — 3 of 5 researched firms (60.0%); 1 of 2 firms awaiting research (50.0%); 4 of 7 firms linked to a published property (57.1%) · measured 2026-09-17

Tarrant County, TX — 1 of 5 researched firms (20.0%); 5 of 7 firms awaiting research (71.4%); 6 of 12 firms linked to a published property (50.0%) · measured 2026-09-17

industry

string | null

What the firm does, as one industry classification.

Always in the record. Can be empty: No industry was resolved for the firm.

Montgomery County, MD — 584 of 629 researched firms (92.8%); 110 of 1,134 firms awaiting research (9.7%); 694 of 1,763 firms linked to a published property (39.4%) · measured 2026-09-17

Collin County, TX — 9 of 9 researched firms (100.0%); 1 of 9 firms awaiting research (11.1%); 10 of 18 firms linked to a published property (55.6%) · measured 2026-09-17

Dallas County, TX — 17 of 17 researched firms (100.0%); 5 of 24 firms awaiting research (20.8%); 22 of 41 firms linked to a published property (53.7%) · measured 2026-09-17

Denton County, TX — 5 of 5 researched firms (100.0%); 1 of 2 firms awaiting research (50.0%); 6 of 7 firms linked to a published property (85.7%) · measured 2026-09-17

Tarrant County, TX — 5 of 5 researched firms (100.0%); 2 of 7 firms awaiting research (28.6%); 7 of 12 firms linked to a published property (58.3%) · measured 2026-09-17

employees

number | null

How many people the firm employs, as a single estimate.

Always in the record. Can be empty: Only a range is known, or nothing is.

Montgomery County, MD — 587 of 629 researched firms (93.3%); 2 of 1,134 firms awaiting research (0.2%); 589 of 1,763 firms linked to a published property (33.4%) · measured 2026-09-17

Collin County, TX — 9 of 9 researched firms (100.0%); 0 of 9 firms awaiting research (0.0%); 9 of 18 firms linked to a published property (50.0%) · measured 2026-09-17

Dallas County, TX — 16 of 17 researched firms (94.1%); 0 of 24 firms awaiting research (0.0%); 16 of 41 firms linked to a published property (39.0%) · measured 2026-09-17

Denton County, TX — 5 of 5 researched firms (100.0%); 0 of 2 firms awaiting research (0.0%); 5 of 7 firms linked to a published property (71.4%) · measured 2026-09-17

Tarrant County, TX — 4 of 5 researched firms (80.0%); 0 of 7 firms awaiting research (0.0%); 4 of 12 firms linked to a published property (33.3%) · measured 2026-09-17

employees_range

string | null

How many people the firm employs, as a band — used when no single figure is known.

Always in the record. Can be empty: No headcount is known.

Montgomery County, MD — 629 of 629 researched firms (100.0%); 110 of 1,134 firms awaiting research (9.7%); 739 of 1,763 firms linked to a published property (41.9%) · measured 2026-09-17

Collin County, TX — 9 of 9 researched firms (100.0%); 1 of 9 firms awaiting research (11.1%); 10 of 18 firms linked to a published property (55.6%) · measured 2026-09-17

Dallas County, TX — 17 of 17 researched firms (100.0%); 5 of 24 firms awaiting research (20.8%); 22 of 41 firms linked to a published property (53.7%) · measured 2026-09-17

Denton County, TX — 5 of 5 researched firms (100.0%); 1 of 2 firms awaiting research (50.0%); 6 of 7 firms linked to a published property (85.7%) · measured 2026-09-17

Tarrant County, TX — 5 of 5 researched firms (100.0%); 2 of 7 firms awaiting research (28.6%); 7 of 12 firms linked to a published property (58.3%) · measured 2026-09-17

linkedin_handle

string | null

The firm's LinkedIn handle.

Always in the record. Can be empty: No LinkedIn page was resolved for the firm.

Montgomery County, MD — 622 of 629 researched firms (98.9%); 2 of 1,134 firms awaiting research (0.2%); 624 of 1,763 firms linked to a published property (35.4%) · measured 2026-09-17

Collin County, TX — 9 of 9 researched firms (100.0%); 0 of 9 firms awaiting research (0.0%); 9 of 18 firms linked to a published property (50.0%) · measured 2026-09-17

Dallas County, TX — 17 of 17 researched firms (100.0%); 0 of 24 firms awaiting research (0.0%); 17 of 41 firms linked to a published property (41.5%) · measured 2026-09-17

Denton County, TX — 5 of 5 researched firms (100.0%); 0 of 2 firms awaiting research (0.0%); 5 of 7 firms linked to a published property (71.4%) · measured 2026-09-17

Tarrant County, TX — 5 of 5 researched firms (100.0%); 0 of 7 firms awaiting research (0.0%); 5 of 12 firms linked to a published property (41.7%) · measured 2026-09-17

phone_numbers

string[] | null

The firm's own main lines. These are business numbers, delivered as Greenfinch holds them — the phone policy that governs a person's numbers does not apply to a firm's.

Always in the record. Can be empty: No number is held for the firm.

Montgomery County, MD — 214 of 629 researched firms (34.0%); 248 of 1,134 firms awaiting research (21.9%); 462 of 1,763 firms linked to a published property (26.2%) · measured 2026-09-17

Collin County, TX — 7 of 9 researched firms (77.8%); 6 of 9 firms awaiting research (66.7%); 13 of 18 firms linked to a published property (72.2%) · measured 2026-09-17

Dallas County, TX — 14 of 17 researched firms (82.4%); 14 of 24 firms awaiting research (58.3%); 28 of 41 firms linked to a published property (68.3%) · measured 2026-09-17

Denton County, TX — 4 of 5 researched firms (80.0%); 0 of 2 firms awaiting research (0.0%); 4 of 7 firms linked to a published property (57.1%) · measured 2026-09-17

Tarrant County, TX — 4 of 5 researched firms (80.0%); 2 of 7 firms awaiting research (28.6%); 6 of 12 firms linked to a published property (50.0%) · measured 2026-09-17

Contacts (people)

The people attached to those properties, with the ways to reach them. This is personal data and it carries obligations under your agreement.

Fields

12 fields delivered

greenfinch_contact_ididentifies the row

string

Greenfinch's identifier for the person, stable across syncs and the key every link row uses.

Always in the record. Always carries a value.

Montgomery County, MD — 3,705 of 3,705 people linked to a published property (100.0%) · measured 2026-09-17

Collin County, TX — 22 of 22 people linked to a published property (100.0%) · measured 2026-09-17

Dallas County, TX — 64 of 64 people linked to a published property (100.0%) · measured 2026-09-17

Denton County, TX — 8 of 8 people linked to a published property (100.0%) · measured 2026-09-17

Tarrant County, TX — 12 of 12 people linked to a published property (100.0%) · measured 2026-09-17

full_name

string | null

The person's name.

Always in the record. Can be empty: Greenfinch holds no name for the person.

Access to the record

Montgomery County, MD — 3,705 of 3,705 people linked to a published property (100.0%) · measured 2026-09-17

Collin County, TX — 22 of 22 people linked to a published property (100.0%) · measured 2026-09-17

Dallas County, TX — 64 of 64 people linked to a published property (100.0%) · measured 2026-09-17

Denton County, TX — 8 of 8 people linked to a published property (100.0%) · measured 2026-09-17

Tarrant County, TX — 12 of 12 people linked to a published property (100.0%) · measured 2026-09-17

title

string | null

The person's job title, in full — never shortened.

Always in the record. Can be empty: No title is held for the person.

Access to the record

Montgomery County, MD — 3,691 of 3,705 people linked to a published property (99.6%) · measured 2026-09-17

Collin County, TX — 22 of 22 people linked to a published property (100.0%) · measured 2026-09-17

Dallas County, TX — 62 of 64 people linked to a published property (96.9%) · measured 2026-09-17

Denton County, TX — 8 of 8 people linked to a published property (100.0%) · measured 2026-09-17

Tarrant County, TX — 12 of 12 people linked to a published property (100.0%) · measured 2026-09-17

email

string | null

The person's work email address.

Always in the record. Can be empty: No deliverable address is held for the person.

Access to the record

Montgomery County, MD — 2,330 of 3,705 people linked to a published property (62.9%) · measured 2026-09-17

Collin County, TX — 17 of 22 people linked to a published property (77.3%) · measured 2026-09-17

Dallas County, TX — 51 of 64 people linked to a published property (79.7%) · measured 2026-09-17

Denton County, TX — 6 of 8 people linked to a published property (75.0%) · measured 2026-09-17

Tarrant County, TX — 8 of 12 people linked to a published property (66.7%) · measured 2026-09-17

email_validation_status

"valid" | "unknown" | null

What Greenfinch knows about that address: valid means confirmed deliverable, and unknown means found but not yet confirmed — a positive signal, not a negative one.

Always in the record. Can be empty: No address is held for the person.

Montgomery County, MD — 2,202 of 3,705 people linked to a published property (59.4%) · measured 2026-09-17

Collin County, TX — 17 of 22 people linked to a published property (77.3%) · measured 2026-09-17

Dallas County, TX — 51 of 64 people linked to a published property (79.7%) · measured 2026-09-17

Denton County, TX — 6 of 8 people linked to a published property (75.0%) · measured 2026-09-17

Tarrant County, TX — 8 of 12 people linked to a published property (66.7%) · measured 2026-09-17

linkedin_url

string | null

The person's LinkedIn profile.

Always in the record. Can be empty: No profile was resolved for the person, or the one on record has not passed Greenfinch's LinkedIn checks.

Montgomery County, MD — 1,789 of 3,705 people linked to a published property (48.3%) · measured 2026-09-17

Collin County, TX — 18 of 22 people linked to a published property (81.8%) · measured 2026-09-17

Dallas County, TX — 42 of 64 people linked to a published property (65.6%) · measured 2026-09-17

Denton County, TX — 3 of 8 people linked to a published property (37.5%) · measured 2026-09-17

Tarrant County, TX — 6 of 12 people linked to a published property (50.0%) · measured 2026-09-17

employer_name

string | null

Who the person works for.

Always in the record. Can be empty: No employer is held for the person.

Montgomery County, MD — 3,645 of 3,705 people linked to a published property (98.4%) · measured 2026-09-17

Collin County, TX — 22 of 22 people linked to a published property (100.0%) · measured 2026-09-17

Dallas County, TX — 64 of 64 people linked to a published property (100.0%) · measured 2026-09-17

Denton County, TX — 8 of 8 people linked to a published property (100.0%) · measured 2026-09-17

Tarrant County, TX — 12 of 12 people linked to a published property (100.0%) · measured 2026-09-17

phones

string

A phone number for the person, in national display format. Each number passes Greenfinch's phone-delivery policy before it ships, so a number Greenfinch holds but may not deliver never appears here.

Always in the record. Always carries a value.

Phone delivery policyAccess to the record

Montgomery County, MD — 1,797 of 3,705 people linked to a published property (48.5%) · measured 2026-09-17

Collin County, TX — 8 of 22 people linked to a published property (36.4%) · measured 2026-09-17

Dallas County, TX — 27 of 64 people linked to a published property (42.2%) · measured 2026-09-17

Denton County, TX — 3 of 8 people linked to a published property (37.5%) · measured 2026-09-17

Tarrant County, TX — 9 of 12 people linked to a published property (75.0%) · measured 2026-09-17

phone_e164

string | null

The person's primary deliverable number in the international format, for matching against numbers already in your own system.

Always in the record. Can be empty: The person has no number Greenfinch may deliver, or their only number is their employer's main office line — deliberately left out here, because two colleagues would otherwise share a number and your own matching would read them as the same person.

Phone delivery policyAccess to the recordRarely carries a value today

Montgomery County, MD — 1,797 of 3,705 people linked to a published property (48.5%) · measured 2026-09-17

Collin County, TX — 8 of 22 people linked to a published property (36.4%) · measured 2026-09-17

Dallas County, TX — 27 of 64 people linked to a published property (42.2%) · measured 2026-09-17

Denton County, TX — 3 of 8 people linked to a published property (37.5%) · measured 2026-09-17

Tarrant County, TX — 9 of 12 people linked to a published property (75.0%) · measured 2026-09-17

name_confidence

number | null

How confident Greenfinch is in the person's name, from 0 to 1. Confidence scores are included only in delivered files; the REST API and a connected assistant do not return them.

Always in the record. Can be empty: No name is held for the person.

email_confidence

number | null

How confident Greenfinch is in the person's email address, from 0 to 1. Included only in delivered files.

Always in the record. Can be empty: No address is held for the person.

linkedin_confidence

number | null

How confident Greenfinch is in the person's LinkedIn profile, from 0 to 1. Included only in delivered files.

Always in the record. Can be empty: No profile is held for the person.

Property to firm

Which firm is attached to which property, and in what role. Identifiers and the relationship's own facts only — never a field of the firm itself.

Fields

6 fields delivered

greenfinch_relationship_ididentifies the row

string

Greenfinch's own identifier for this property-to-firm link, stable across syncs so you can update the row rather than insert a second one.

Always in the record. Always carries a value.

greenfinch_property_ididentifies the row

string

Greenfinch's identifier for the property. It is the only property identifier Greenfinch publishes, it is stable, and it is what every other row and every de-duplication check keys on.

Always in the record. Always carries a value.

greenfinch_organization_ididentifies the row

string

Greenfinch's identifier for the firm, stable across syncs and the key every link row uses.

Always in the record. Always carries a value.

role

string

What the firm is to the property: owner, property_manager, operator (the business that runs a site it does not own and decides its upkeep), tenant (occupies space without deciding upkeep; recorded, never the buyer), or another attributed role.

Always in the record. Always carries a value.

attribution_type

string | null

What kind of evidence attached the firm to the property, from strongest to weakest: named for the property itself, portfolio evidence, a matched roster, an inferred coverage area, or the county's record.

Always in the record. Can be empty: The link predates Greenfinch recording how it was established.

is_current

boolean

Whether the firm's relationship to the property still stands.

Always in the record. Always carries a value.

Property to person

Which person is attached to which property, and in what role, with how confident Greenfinch is in the connection.

Fields

8 fields delivered

greenfinch_relationship_ididentifies the row

string

Greenfinch's own identifier for this property-to-person link, stable across syncs so you can update the row rather than insert a second one.

Always in the record. Always carries a value.

greenfinch_property_ididentifies the row

string

Greenfinch's identifier for the property. It is the only property identifier Greenfinch publishes, it is stable, and it is what every other row and every de-duplication check keys on.

Always in the record. Always carries a value.

greenfinch_contact_ididentifies the row

string

Greenfinch's identifier for the person, stable across syncs and the key every link row uses.

Always in the record. Always carries a value.

role

string | null

What the person is to the property: owner, property_manager or operator by the company they work for, or facilities, procurement, leasing or other by their job.

Always in the record. Can be empty: No role was attributed to this person for this property.

attribution_type

string | null

What kind of evidence attached the person to the property.

Always in the record. Can be empty: The link predates Greenfinch recording how it was established.

relationship_status

string

Whether the person's connection to the property is active, has changed, is former, or is under review.

Always in the record. Always carries a value.

relationship_confidence

"high" | "medium" | "low" | string

How strongly Greenfinch holds that connection — high, medium or low.

Always in the record. Always carries a value.

stale_pending_review

boolean

True when Greenfinch's own checks suspect this connection has gone stale but have not concluded it. Treat the connection as under review rather than confirmed; it never silently becomes a confirmed one.

Always in the record. Always carries a value.

Person to firm

Where a person works. This is the one link table carrying a fact about the person rather than about the relationship, which is why that one field needs the people permission.

Fields

5 fields delivered

greenfinch_relationship_ididentifies the row

string

Greenfinch's own identifier for this person-to-firm link, stable across syncs so you can update the row rather than insert a second one.

Always in the record. Always carries a value.

greenfinch_contact_ididentifies the row

string

Greenfinch's identifier for the person, stable across syncs and the key every link row uses.

Always in the record. Always carries a value.

greenfinch_organization_ididentifies the row

string

Greenfinch's identifier for the firm, stable across syncs and the key every link row uses.

Always in the record. Always carries a value.

is_current

boolean

Whether this person still works at this firm. This is about the person's employment, not about whether the firm is still attached to a property — the firm's own link row answers that separately.

Always in the record. Always carries a value.

title

string | null

The person's job title, in full — never shortened.

Always in the record. Can be empty: No title is held for the person.

Contacts export permissionAccess to the record

Lead bundles

One property with its firms, its people, your own pipeline state and your own notes, nested in a single record rather than spread across tables. This is the shape all three doors deliver.

Delivered as one nested record per property. Its top-level keys, in order: bundle_version, greenfinch_property_id, generated_at, delivered_to_org, partial, partial_reason, property, organizations, contacts, contacts_summary, pipeline, notes, notes_digest, actions, actions_digest.

Fields

218 fields delivered

bundle_version

1

The version of the lead-bundle shape this record follows. It moves only when the shape changes in a way your integration would notice.

Always in the record. Always carries a value.

greenfinch_property_ididentifies the row

string

Greenfinch's identifier for the property. It is the only property identifier Greenfinch publishes, it is stable, and it is what every other row and every de-duplication check keys on.

Always in the record. Always carries a value.

generated_at

string

When Greenfinch assembled this record, as an ISO-8601 timestamp.

Always in the record. Always carries a value.

delivered_to_org

string

Your organization, echoed back so a receiving system can tell deliveries apart.

Always in the record. Always carries a value.

partial

boolean

Whether this is a reduced record for a property you have qualified but never revealed. Only the outbound feed to your own systems ever sends one; asking for a record directly is refused instead, and a reduced record carries no people at all.

Always in the record. Always carries a value.

partial_reason

"not_revealed" | null

Why the record is reduced, when it is.

Always in the record. Can be empty: The record is complete, which is the ordinary case.

property.address

string

The property's street address, validated where validation succeeded and otherwise the county's own line. Always a string, though it can be an empty one where no source carries an address at all.

Always in the record. Always carries a value.

property.city

string | null

The city.

Always in the record. Can be empty: The county's record carries no city for this parcel.

property.state

string | null

The two-letter state code.

Always in the record. Can be empty: The county's record carries no state for this parcel.

property.zip

string | null

The postal code.

Always in the record. Can be empty: The county's record carries no postal code for this parcel.

property.county

string | null

The county the property sits in.

Always in the record. Can be empty: The county name was not resolved for this parcel.

property.lat

number | null

Latitude of the parcel's centre point.

Always in the record. Can be empty: The parcel has no mapped boundary to take a centre point from.

property.lon

number | null

Longitude of the parcel's centre point.

Always in the record. Can be empty: The parcel has no mapped boundary to take a centre point from.

property.common_name

string | null

The name the property is known by — a building, park or campus name rather than its address.

Always in the record. Can be empty: Greenfinch's research has not produced it for this property. A property whose research has never run carries none of the researched fields.

Greenfinch researchYour plan

property.common_name_confidence

number | null

How confident Greenfinch is in that name, from 0 to 1. At or below 0.4 the name is an honest address-style stand-in rather than a name anyone uses, so do not present it as one.

Always in the record. Can be empty: No name was produced, so there is nothing to score.

Greenfinch researchYour plan

property.lot_sqft

number | null

The lot's area in square feet.

Always in the record. Can be empty: No source Greenfinch holds states a lot area for this parcel.

property.building_sqft

number | null

The building's area in square feet. A county figure at or under 100 square feet is a placeholder for a building nobody measured, not a size, so it is never delivered (the floor is inclusive: 100 itself is a placeholder).

Always in the record. Can be empty: No source Greenfinch holds states a building area — common on land with no building on it, and on a building whose county record carries only the placeholder figure.

property.building_sqft_is_planned

boolean

Whether that building area describes something planned or approved rather than something standing today.

Always in the record. Always carries a value.

property.year_built

number | null

The year the building was built. Where a county lists every building on a site, it is the year of the building with the most floor area, or, when that building's record gives no year, of the largest building that does.

Always in the record. Can be empty: No source Greenfinch holds states a year built.

property.year_built_detail

object | null

How the year built value breaks down across the site's buildings. Present whenever the value is, except as below.

Always in the record. Can be empty: The year_built value is empty, so there is nothing to break down; or, rarely, Greenfinch holds a per-building breakdown for this property that could not be read (it is missing, malformed, or disagrees with the year_built value) — the value itself is still delivered.

property.year_built_detail.basis

"per_building" | "main_building_only"

How to read this detail: per_building when Greenfinch combined the county's records of every building on the site; main_building_only when the year_built value comes from one main-building record, in which case the counts in this detail are empty.

Only when its record is there. Can be empty: Only when property.year_built_detail is empty: The year_built value is empty, so there is nothing to break down; or, rarely, Greenfinch holds a per-building breakdown for this property that could not be read (it is missing, malformed, or disagrees with the year_built value) — the value itself is still delivered.

property.year_built_detail.oldest

number | null

The earliest year built among the site's buildings.

Only when its record is there. Can be empty: The detail comes from a single main-building record, so nothing is known about the site's other buildings. One building's year says nothing about the others. It is also empty whenever property.year_built_detail is.

property.year_built_detail.newest

number | null

The latest year built among the site's buildings.

Only when its record is there. Can be empty: The detail comes from a single main-building record, so nothing is known about the site's other buildings. One building's year says nothing about the others. It is also empty whenever property.year_built_detail is.

property.year_built_detail.primary_building_basis

"area" | "record_order" | "largest_stated" | null

Which building's year is the year_built value: area for the building with the most floor area; record_order for the county's first-listed building, when floor areas tie or are unknown; largest_stated for the largest building whose record gives a year, when the main building's record gives none.

Only when its record is there. Can be empty: The detail comes from a single main-building record, so nothing is known about the site's other buildings. It is also empty whenever property.year_built_detail is.

property.year_built_detail.buildings

number | null

How many of the site's buildings state a year built.

Only when its record is there. Can be empty: The detail comes from a single main-building record, so nothing is known about the site's other buildings. It is also empty whenever property.year_built_detail is.

property.year_built_detail.buildings_total

number | null

How many buildings the county lists on the site.

Only when its record is there. Can be empty: The detail comes from a single main-building record, so nothing is known about the site's other buildings. It is also empty whenever property.year_built_detail is.

property.num_floors

number | null

How many floors the building has above ground, as a whole number. Where a county lists every building on a site, it is the tallest building's floor count, rounded up to a whole floor.

Always in the record. Can be empty: No source Greenfinch holds states a floor count.

property.num_floors_detail

object | null

How the floor count value breaks down across the site's buildings. Present whenever the value is, except as below.

Always in the record. Can be empty: The num_floors value is empty, so there is nothing to break down; or, rarely, Greenfinch holds a per-building breakdown for this property that could not be read (it is missing, malformed, or disagrees with the num_floors value) — the value itself is still delivered.

property.num_floors_detail.basis

"per_building" | "main_building_only"

How to read this detail: per_building when Greenfinch combined the county's records of every building on the site; main_building_only when the num_floors value comes from one main-building record, in which case the counts in this detail are empty.

Only when its record is there. Can be empty: Only when property.num_floors_detail is empty: The num_floors value is empty, so there is nothing to break down; or, rarely, Greenfinch holds a per-building breakdown for this property that could not be read (it is missing, malformed, or disagrees with the num_floors value) — the value itself is still delivered.

property.num_floors_detail.max

number

The tallest building's floor count exactly as the county records it, which can be a fraction (1.5 storeys); num_floors is this figure rounded up to a whole floor.

Only when its record is there. Can be empty: Only when property.num_floors_detail is empty: The num_floors value is empty, so there is nothing to break down; or, rarely, Greenfinch holds a per-building breakdown for this property that could not be read (it is missing, malformed, or disagrees with the num_floors value) — the value itself is still delivered.

property.num_floors_detail.area_weighted_mean

number | null

The average floor count across the site's buildings, weighted by each building's floor area.

Only when its record is there. Can be empty: The county gives no floor area for the site's buildings, or the detail comes from a single main-building record. It is also empty whenever property.num_floors_detail is.

property.num_floors_detail.primary_building

number | null

The floor count of the site's main building: the one with the most floor area, or, when floor areas tie or are unknown, the building the county lists first (primary_building_basis says which).

Only when its record is there. Can be empty: The main building's record gives no floor count, or the detail comes from a single main-building record, so nothing is known about the site's other buildings. It is also empty whenever property.num_floors_detail is.

property.num_floors_detail.primary_building_basis

"area" | "record_order" | null

How the main building was chosen: area when it has the most floor area; record_order when floor areas tie or are unknown and the county's first-listed building was taken.

Only when its record is there. Can be empty: The detail comes from a single main-building record, so nothing is known about the site's other buildings. It is also empty whenever property.num_floors_detail is.

property.num_floors_detail.buildings

number | null

How many of the site's buildings state a floor count.

Only when its record is there. Can be empty: The detail comes from a single main-building record, so nothing is known about the site's other buildings. It is also empty whenever property.num_floors_detail is.

property.num_floors_detail.buildings_total

number | null

How many buildings the county lists on the site.

Only when its record is there. Can be empty: The detail comes from a single main-building record, so nothing is known about the site's other buildings. It is also empty whenever property.num_floors_detail is.

property.effective_year_built

number | null

The year the county treats the building as dating from once renovations are taken into account — later than the year built when the building has been substantially updated. On a site with several buildings it follows the same rule as the year built: the building with the most floor area, or, when that building's record gives no effective year, the largest building that does.

Always in the record. Can be empty: It is filled only where a county publishes it, and most counties do not carry it today; where one does, it is often filled for only some of its buildings. Where a county does publish it, its records say nothing about it for this property.

Rarely carries a value today

property.effective_year_built_detail

object | null

How the effective year built value breaks down across the site's buildings. Present whenever the value is, except as below.

Always in the record. Can be empty: The effective_year_built value is empty, so there is nothing to break down; or, rarely, Greenfinch holds a per-building breakdown for this property that could not be read (it is missing, malformed, or disagrees with the effective_year_built value) — the value itself is still delivered.

property.effective_year_built_detail.basis

"per_building" | "main_building_only"

How to read this detail: per_building when Greenfinch combined the county's records of every building on the site; main_building_only when the effective_year_built value comes from one main-building record, in which case the counts in this detail are empty.

Only when its record is there. Can be empty: Only when property.effective_year_built_detail is empty: The effective_year_built value is empty, so there is nothing to break down; or, rarely, Greenfinch holds a per-building breakdown for this property that could not be read (it is missing, malformed, or disagrees with the effective_year_built value) — the value itself is still delivered.

property.effective_year_built_detail.oldest

number | null

The earliest effective year built among the site's buildings.

Only when its record is there. Can be empty: The detail comes from a single main-building record, so nothing is known about the site's other buildings. One building's year says nothing about the others. It is also empty whenever property.effective_year_built_detail is.

property.effective_year_built_detail.newest

number | null

The latest effective year built among the site's buildings.

Only when its record is there. Can be empty: The detail comes from a single main-building record, so nothing is known about the site's other buildings. One building's year says nothing about the others. It is also empty whenever property.effective_year_built_detail is.

property.effective_year_built_detail.primary_building_basis

"area" | "record_order" | "largest_stated" | null

Which building's year is the effective_year_built value: area for the building with the most floor area; record_order for the county's first-listed building, when floor areas tie or are unknown; largest_stated for the largest building whose record gives a year, when the main building's record gives none.

Only when its record is there. Can be empty: The detail comes from a single main-building record, so nothing is known about the site's other buildings. It is also empty whenever property.effective_year_built_detail is.

property.effective_year_built_detail.buildings

number | null

How many of the site's buildings state a effective year built.

Only when its record is there. Can be empty: The detail comes from a single main-building record, so nothing is known about the site's other buildings. It is also empty whenever property.effective_year_built_detail is.

property.effective_year_built_detail.buildings_total

number | null

How many buildings the county lists on the site.

Only when its record is there. Can be empty: The detail comes from a single main-building record, so nothing is known about the site's other buildings. It is also empty whenever property.effective_year_built_detail is.

property.heating_type

string | null

The kind of heating system the building uses: Forced Air Furnace, Heat Pump, Hot Water or Steam Boiler, Electric Resistance, Rooftop Package Unit, Radiant, Space or Wall Heater, None or Other. On a site with several buildings it is the value covering the most building floor area.

Always in the record. Can be empty: It is filled only where a county publishes it, and most counties do not carry it today; where one does, it is often filled for only some of its buildings. Where a county does publish it, its records say nothing about it for this property.

Rarely carries a value today

property.heating_type_detail

object | null

How the heating type value breaks down across the site's buildings. Present whenever the value is, except as below.

Always in the record. Can be empty: The heating_type value is empty, so there is nothing to break down; or, rarely, Greenfinch holds a per-building breakdown for this property that could not be read (it is missing, malformed, or disagrees with the heating_type value) — the value itself is still delivered.

property.heating_type_detail.basis

"per_building" | "main_building_only"

How to read this detail: per_building when Greenfinch combined the county's records of every building on the site; main_building_only when the heating_type value comes from one main-building record, in which case the counts in this detail are empty.

Only when its record is there. Can be empty: Only when property.heating_type_detail is empty: The heating_type value is empty, so there is nothing to break down; or, rarely, Greenfinch holds a per-building breakdown for this property that could not be read (it is missing, malformed, or disagrees with the heating_type value) — the value itself is still delivered.

property.heating_type_detail.buildings

number | null

How many of the site's buildings state a heating type.

Only when its record is there. Can be empty: The detail comes from a single main-building record, so nothing is known about the site's other buildings. It is also empty whenever property.heating_type_detail is.

property.heating_type_detail.buildings_total

number | null

How many buildings the county lists on the site.

Only when its record is there. Can be empty: The detail comes from a single main-building record, so nothing is known about the site's other buildings. It is also empty whenever property.heating_type_detail is.

property.heating_type_detail.area_share

number | null

The share of the site's known building floor area, from 0 to 1, in buildings that state a heating type.

Only when its record is there. Can be empty: The county gives no floor area for the site's buildings, or the detail comes from a single main-building record. It is also empty whenever property.heating_type_detail is.

property.heating_type_detail.values[].value

string

One heating type found on the site. The list is ordered by share of floor area, then by number of buildings, and its first entry is always the heating_type value.

Only when its record is there. Can be empty: Only when property.heating_type_detail is empty: The heating_type value is empty, so there is nothing to break down; or, rarely, Greenfinch holds a per-building breakdown for this property that could not be read (it is missing, malformed, or disagrees with the heating_type value) — the value itself is still delivered.

property.heating_type_detail.values[].buildings

number | null

How many buildings have this value.

Only when its record is there. Can be empty: The detail comes from a single main-building record, so nothing is known about the site's other buildings. It is also empty whenever property.heating_type_detail is.

property.heating_type_detail.values[].area_share

number | null

This value's share of the site's known building floor area, from 0 to 1.

Only when its record is there. Can be empty: The county gives no floor area for the site's buildings, or the detail comes from a single main-building record. It is also empty whenever property.heating_type_detail is.

property.cooling_type

string | null

The kind of cooling system the building uses: Central Air, Rooftop Package Unit, Chilled Water, Heat Pump, Packaged Terminal, Evaporative, Window or Wall Unit, None or Other. On a site with several buildings it is the value covering the most building floor area.

Always in the record. Can be empty: It is filled only where a county publishes it, and most counties do not carry it today; where one does, it is often filled for only some of its buildings. Where a county does publish it, its records say nothing about it for this property.

Rarely carries a value today

property.cooling_type_detail

object | null

How the cooling type value breaks down across the site's buildings. Present whenever the value is, except as below.

Always in the record. Can be empty: The cooling_type value is empty, so there is nothing to break down; or, rarely, Greenfinch holds a per-building breakdown for this property that could not be read (it is missing, malformed, or disagrees with the cooling_type value) — the value itself is still delivered.

property.cooling_type_detail.basis

"per_building" | "main_building_only"

How to read this detail: per_building when Greenfinch combined the county's records of every building on the site; main_building_only when the cooling_type value comes from one main-building record, in which case the counts in this detail are empty.

Only when its record is there. Can be empty: Only when property.cooling_type_detail is empty: The cooling_type value is empty, so there is nothing to break down; or, rarely, Greenfinch holds a per-building breakdown for this property that could not be read (it is missing, malformed, or disagrees with the cooling_type value) — the value itself is still delivered.

property.cooling_type_detail.buildings

number | null

How many of the site's buildings state a cooling type.

Only when its record is there. Can be empty: The detail comes from a single main-building record, so nothing is known about the site's other buildings. It is also empty whenever property.cooling_type_detail is.

property.cooling_type_detail.buildings_total

number | null

How many buildings the county lists on the site.

Only when its record is there. Can be empty: The detail comes from a single main-building record, so nothing is known about the site's other buildings. It is also empty whenever property.cooling_type_detail is.

property.cooling_type_detail.area_share

number | null

The share of the site's known building floor area, from 0 to 1, in buildings that state a cooling type.

Only when its record is there. Can be empty: The county gives no floor area for the site's buildings, or the detail comes from a single main-building record. It is also empty whenever property.cooling_type_detail is.

property.cooling_type_detail.values[].value

string

One cooling type found on the site. The list is ordered by share of floor area, then by number of buildings, and its first entry is always the cooling_type value.

Only when its record is there. Can be empty: Only when property.cooling_type_detail is empty: The cooling_type value is empty, so there is nothing to break down; or, rarely, Greenfinch holds a per-building breakdown for this property that could not be read (it is missing, malformed, or disagrees with the cooling_type value) — the value itself is still delivered.

property.cooling_type_detail.values[].buildings

number | null

How many buildings have this value.

Only when its record is there. Can be empty: The detail comes from a single main-building record, so nothing is known about the site's other buildings. It is also empty whenever property.cooling_type_detail is.

property.cooling_type_detail.values[].area_share

number | null

This value's share of the site's known building floor area, from 0 to 1.

Only when its record is there. Can be empty: The county gives no floor area for the site's buildings, or the detail comes from a single main-building record. It is also empty whenever property.cooling_type_detail is.

property.primary_construction_type

string | null

What the building's structure is mainly made of: Wood Frame, Masonry, Concrete, Steel Frame, Pre-Engineered Metal, Tilt-Up, Mixed or Other. On a site with several buildings it is the value covering the most building floor area.

Always in the record. Can be empty: It is filled only where a county publishes it, and most counties do not carry it today; where one does, it is often filled for only some of its buildings. Where a county does publish it, its records say nothing about it for this property.

Rarely carries a value today

property.primary_construction_type_detail

object | null

How the construction type value breaks down across the site's buildings. Present whenever the value is, except as below.

Always in the record. Can be empty: The primary_construction_type value is empty, so there is nothing to break down; or, rarely, Greenfinch holds a per-building breakdown for this property that could not be read (it is missing, malformed, or disagrees with the primary_construction_type value) — the value itself is still delivered.

property.primary_construction_type_detail.basis

"per_building" | "main_building_only"

How to read this detail: per_building when Greenfinch combined the county's records of every building on the site; main_building_only when the primary_construction_type value comes from one main-building record, in which case the counts in this detail are empty.

Only when its record is there. Can be empty: Only when property.primary_construction_type_detail is empty: The primary_construction_type value is empty, so there is nothing to break down; or, rarely, Greenfinch holds a per-building breakdown for this property that could not be read (it is missing, malformed, or disagrees with the primary_construction_type value) — the value itself is still delivered.

property.primary_construction_type_detail.buildings

number | null

How many of the site's buildings state a construction type.

Only when its record is there. Can be empty: The detail comes from a single main-building record, so nothing is known about the site's other buildings. It is also empty whenever property.primary_construction_type_detail is.

property.primary_construction_type_detail.buildings_total

number | null

How many buildings the county lists on the site.

Only when its record is there. Can be empty: The detail comes from a single main-building record, so nothing is known about the site's other buildings. It is also empty whenever property.primary_construction_type_detail is.

property.primary_construction_type_detail.area_share

number | null

The share of the site's known building floor area, from 0 to 1, in buildings that state a construction type.

Only when its record is there. Can be empty: The county gives no floor area for the site's buildings, or the detail comes from a single main-building record. It is also empty whenever property.primary_construction_type_detail is.

property.primary_construction_type_detail.values[].value

string

One construction type found on the site. The list is ordered by share of floor area, then by number of buildings, and its first entry is always the primary_construction_type value.

Only when its record is there. Can be empty: Only when property.primary_construction_type_detail is empty: The primary_construction_type value is empty, so there is nothing to break down; or, rarely, Greenfinch holds a per-building breakdown for this property that could not be read (it is missing, malformed, or disagrees with the primary_construction_type value) — the value itself is still delivered.

property.primary_construction_type_detail.values[].buildings

number | null

How many buildings have this value.

Only when its record is there. Can be empty: The detail comes from a single main-building record, so nothing is known about the site's other buildings. It is also empty whenever property.primary_construction_type_detail is.

property.primary_construction_type_detail.values[].area_share

number | null

This value's share of the site's known building floor area, from 0 to 1.

Only when its record is there. Can be empty: The county gives no floor area for the site's buildings, or the detail comes from a single main-building record. It is also empty whenever property.primary_construction_type_detail is.

property.exterior_wall_material

string | null

What the building's outside walls are faced with: Brick, Stucco or EIFS, Vinyl or Aluminum Siding, Wood Siding, Concrete or Block, Metal Panel, Glass Curtain Wall, Stone or Other. On a site with several buildings it is the value covering the most building floor area.

Always in the record. Can be empty: It is filled only where a county publishes it, and most counties do not carry it today; where one does, it is often filled for only some of its buildings. Where a county does publish it, its records say nothing about it for this property.

Rarely carries a value today

property.exterior_wall_material_detail

object | null

How the exterior wall material value breaks down across the site's buildings. Present whenever the value is, except as below.

Always in the record. Can be empty: The exterior_wall_material value is empty, so there is nothing to break down; or, rarely, Greenfinch holds a per-building breakdown for this property that could not be read (it is missing, malformed, or disagrees with the exterior_wall_material value) — the value itself is still delivered.

property.exterior_wall_material_detail.basis

"per_building" | "main_building_only"

How to read this detail: per_building when Greenfinch combined the county's records of every building on the site; main_building_only when the exterior_wall_material value comes from one main-building record, in which case the counts in this detail are empty.

Only when its record is there. Can be empty: Only when property.exterior_wall_material_detail is empty: The exterior_wall_material value is empty, so there is nothing to break down; or, rarely, Greenfinch holds a per-building breakdown for this property that could not be read (it is missing, malformed, or disagrees with the exterior_wall_material value) — the value itself is still delivered.

property.exterior_wall_material_detail.buildings

number | null

How many of the site's buildings state a exterior wall material.

Only when its record is there. Can be empty: The detail comes from a single main-building record, so nothing is known about the site's other buildings. It is also empty whenever property.exterior_wall_material_detail is.

property.exterior_wall_material_detail.buildings_total

number | null

How many buildings the county lists on the site.

Only when its record is there. Can be empty: The detail comes from a single main-building record, so nothing is known about the site's other buildings. It is also empty whenever property.exterior_wall_material_detail is.

property.exterior_wall_material_detail.area_share

number | null

The share of the site's known building floor area, from 0 to 1, in buildings that state a exterior wall material.

Only when its record is there. Can be empty: The county gives no floor area for the site's buildings, or the detail comes from a single main-building record. It is also empty whenever property.exterior_wall_material_detail is.

property.exterior_wall_material_detail.values[].value

string

One exterior wall material found on the site. The list is ordered by share of floor area, then by number of buildings, and its first entry is always the exterior_wall_material value.

Only when its record is there. Can be empty: Only when property.exterior_wall_material_detail is empty: The exterior_wall_material value is empty, so there is nothing to break down; or, rarely, Greenfinch holds a per-building breakdown for this property that could not be read (it is missing, malformed, or disagrees with the exterior_wall_material value) — the value itself is still delivered.

property.exterior_wall_material_detail.values[].buildings

number | null

How many buildings have this value.

Only when its record is there. Can be empty: The detail comes from a single main-building record, so nothing is known about the site's other buildings. It is also empty whenever property.exterior_wall_material_detail is.

property.exterior_wall_material_detail.values[].area_share

number | null

This value's share of the site's known building floor area, from 0 to 1.

Only when its record is there. Can be empty: The county gives no floor area for the site's buildings, or the detail comes from a single main-building record. It is also empty whenever property.exterior_wall_material_detail is.

property.foundation_type

string | null

What the building stands on: Slab on Grade, Crawl Space, Full Basement, Partial Basement, Pier and Beam, Piling or Other. On a site with several buildings it is the value covering the most building floor area.

Always in the record. Can be empty: It is filled only where a county publishes it, and most counties do not carry it today; where one does, it is often filled for only some of its buildings. Where a county does publish it, its records say nothing about it for this property.

Rarely carries a value today

property.foundation_type_detail

object | null

How the foundation type value breaks down across the site's buildings. Present whenever the value is, except as below.

Always in the record. Can be empty: The foundation_type value is empty, so there is nothing to break down; or, rarely, Greenfinch holds a per-building breakdown for this property that could not be read (it is missing, malformed, or disagrees with the foundation_type value) — the value itself is still delivered.

property.foundation_type_detail.basis

"per_building" | "main_building_only"

How to read this detail: per_building when Greenfinch combined the county's records of every building on the site; main_building_only when the foundation_type value comes from one main-building record, in which case the counts in this detail are empty.

Only when its record is there. Can be empty: Only when property.foundation_type_detail is empty: The foundation_type value is empty, so there is nothing to break down; or, rarely, Greenfinch holds a per-building breakdown for this property that could not be read (it is missing, malformed, or disagrees with the foundation_type value) — the value itself is still delivered.

property.foundation_type_detail.buildings

number | null

How many of the site's buildings state a foundation type.

Only when its record is there. Can be empty: The detail comes from a single main-building record, so nothing is known about the site's other buildings. It is also empty whenever property.foundation_type_detail is.

property.foundation_type_detail.buildings_total

number | null

How many buildings the county lists on the site.

Only when its record is there. Can be empty: The detail comes from a single main-building record, so nothing is known about the site's other buildings. It is also empty whenever property.foundation_type_detail is.

property.foundation_type_detail.area_share

number | null

The share of the site's known building floor area, from 0 to 1, in buildings that state a foundation type.

Only when its record is there. Can be empty: The county gives no floor area for the site's buildings, or the detail comes from a single main-building record. It is also empty whenever property.foundation_type_detail is.

property.foundation_type_detail.values[].value

string

One foundation type found on the site. The list is ordered by share of floor area, then by number of buildings, and its first entry is always the foundation_type value.

Only when its record is there. Can be empty: Only when property.foundation_type_detail is empty: The foundation_type value is empty, so there is nothing to break down; or, rarely, Greenfinch holds a per-building breakdown for this property that could not be read (it is missing, malformed, or disagrees with the foundation_type value) — the value itself is still delivered.

property.foundation_type_detail.values[].buildings

number | null

How many buildings have this value.

Only when its record is there. Can be empty: The detail comes from a single main-building record, so nothing is known about the site's other buildings. It is also empty whenever property.foundation_type_detail is.

property.foundation_type_detail.values[].area_share

number | null

This value's share of the site's known building floor area, from 0 to 1.

Only when its record is there. Can be empty: The county gives no floor area for the site's buildings, or the detail comes from a single main-building record. It is also empty whenever property.foundation_type_detail is.

property.roof_cover

string | null

What the roof's surface is made of: Asphalt Shingle, Metal, Built-Up or Modified Bitumen, Single-Ply Membrane, Tile, Wood Shake or Shingle, Slate or Other. On a site with several buildings it is the value covering the most building floor area.

Always in the record. Can be empty: It is filled only where a county publishes it, and most counties do not carry it today; where one does, it is often filled for only some of its buildings. Where a county does publish it, its records say nothing about it for this property.

Rarely carries a value today

property.roof_cover_detail

object | null

How the roof covering value breaks down across the site's buildings. Present whenever the value is, except as below.

Always in the record. Can be empty: The roof_cover value is empty, so there is nothing to break down; or, rarely, Greenfinch holds a per-building breakdown for this property that could not be read (it is missing, malformed, or disagrees with the roof_cover value) — the value itself is still delivered.

property.roof_cover_detail.basis

"per_building" | "main_building_only"

How to read this detail: per_building when Greenfinch combined the county's records of every building on the site; main_building_only when the roof_cover value comes from one main-building record, in which case the counts in this detail are empty.

Only when its record is there. Can be empty: Only when property.roof_cover_detail is empty: The roof_cover value is empty, so there is nothing to break down; or, rarely, Greenfinch holds a per-building breakdown for this property that could not be read (it is missing, malformed, or disagrees with the roof_cover value) — the value itself is still delivered.

property.roof_cover_detail.buildings

number | null

How many of the site's buildings state a roof covering.

Only when its record is there. Can be empty: The detail comes from a single main-building record, so nothing is known about the site's other buildings. It is also empty whenever property.roof_cover_detail is.

property.roof_cover_detail.buildings_total

number | null

How many buildings the county lists on the site.

Only when its record is there. Can be empty: The detail comes from a single main-building record, so nothing is known about the site's other buildings. It is also empty whenever property.roof_cover_detail is.

property.roof_cover_detail.area_share

number | null

The share of the site's known building floor area, from 0 to 1, in buildings that state a roof covering.

Only when its record is there. Can be empty: The county gives no floor area for the site's buildings, or the detail comes from a single main-building record. It is also empty whenever property.roof_cover_detail is.

property.roof_cover_detail.values[].value

string

One roof covering found on the site. The list is ordered by share of floor area, then by number of buildings, and its first entry is always the roof_cover value.

Only when its record is there. Can be empty: Only when property.roof_cover_detail is empty: The roof_cover value is empty, so there is nothing to break down; or, rarely, Greenfinch holds a per-building breakdown for this property that could not be read (it is missing, malformed, or disagrees with the roof_cover value) — the value itself is still delivered.

property.roof_cover_detail.values[].buildings

number | null

How many buildings have this value.

Only when its record is there. Can be empty: The detail comes from a single main-building record, so nothing is known about the site's other buildings. It is also empty whenever property.roof_cover_detail is.

property.roof_cover_detail.values[].area_share

number | null

This value's share of the site's known building floor area, from 0 to 1.

Only when its record is there. Can be empty: The county gives no floor area for the site's buildings, or the detail comes from a single main-building record. It is also empty whenever property.roof_cover_detail is.

property.roof_shape

string | null

The roof's shape, as one value from a fixed list of roof shapes — among them Gable, Hip, Shed, Mixed and Other. On a site with several buildings it is the value covering the most building floor area.

Always in the record. Can be empty: It is filled only where a county publishes it, and most counties do not carry it today; where one does, it is often filled for only some of its buildings. Where a county does publish it, its records say nothing about it for this property.

Rarely carries a value today

property.roof_shape_detail

object | null

How the roof shape value breaks down across the site's buildings. Present whenever the value is, except as below.

Always in the record. Can be empty: The roof_shape value is empty, so there is nothing to break down; or, rarely, Greenfinch holds a per-building breakdown for this property that could not be read (it is missing, malformed, or disagrees with the roof_shape value) — the value itself is still delivered.

property.roof_shape_detail.basis

"per_building" | "main_building_only"

How to read this detail: per_building when Greenfinch combined the county's records of every building on the site; main_building_only when the roof_shape value comes from one main-building record, in which case the counts in this detail are empty.

Only when its record is there. Can be empty: Only when property.roof_shape_detail is empty: The roof_shape value is empty, so there is nothing to break down; or, rarely, Greenfinch holds a per-building breakdown for this property that could not be read (it is missing, malformed, or disagrees with the roof_shape value) — the value itself is still delivered.

property.roof_shape_detail.buildings

number | null

How many of the site's buildings state a roof shape.

Only when its record is there. Can be empty: The detail comes from a single main-building record, so nothing is known about the site's other buildings. It is also empty whenever property.roof_shape_detail is.

property.roof_shape_detail.buildings_total

number | null

How many buildings the county lists on the site.

Only when its record is there. Can be empty: The detail comes from a single main-building record, so nothing is known about the site's other buildings. It is also empty whenever property.roof_shape_detail is.

property.roof_shape_detail.area_share

number | null

The share of the site's known building floor area, from 0 to 1, in buildings that state a roof shape.

Only when its record is there. Can be empty: The county gives no floor area for the site's buildings, or the detail comes from a single main-building record. It is also empty whenever property.roof_shape_detail is.

property.roof_shape_detail.values[].value

string

One roof shape found on the site. The list is ordered by share of floor area, then by number of buildings, and its first entry is always the roof_shape value.

Only when its record is there. Can be empty: Only when property.roof_shape_detail is empty: The roof_shape value is empty, so there is nothing to break down; or, rarely, Greenfinch holds a per-building breakdown for this property that could not be read (it is missing, malformed, or disagrees with the roof_shape value) — the value itself is still delivered.

property.roof_shape_detail.values[].buildings

number | null

How many buildings have this value.

Only when its record is there. Can be empty: The detail comes from a single main-building record, so nothing is known about the site's other buildings. It is also empty whenever property.roof_shape_detail is.

property.roof_shape_detail.values[].area_share

number | null

This value's share of the site's known building floor area, from 0 to 1.

Only when its record is there. Can be empty: The county gives no floor area for the site's buildings, or the detail comes from a single main-building record. It is also empty whenever property.roof_shape_detail is.

property.quality_grade

string | null

Assessment quality grade

The construction-quality grade the county assessor recorded in order to value the building for tax: Excellent, Very Good, Good, Average, Fair, Poor or Other, on that county's own scale. It is a tax-valuation tier, not an inspection and not a statement about the building's condition today — nobody visited the property, and the grade may be years old — so use it as a rough tier for sizing work, never as a report of defects. On a site with several buildings it is the value covering the most building floor area.

Always in the record. Can be empty: It is filled only where a county publishes it, and most counties do not carry it today; where one does, it is often filled for only some of its buildings. Where a county does publish it, its records say nothing about it for this property.

Rarely carries a value today

property.quality_grade_detail

object | null

How the quality grade value breaks down across the site's buildings. Present whenever the value is, except as below.

Always in the record. Can be empty: The quality_grade value is empty, so there is nothing to break down; or, rarely, Greenfinch holds a per-building breakdown for this property that could not be read (it is missing, malformed, or disagrees with the quality_grade value) — the value itself is still delivered.

property.quality_grade_detail.basis

"per_building" | "main_building_only"

How to read this detail: per_building when Greenfinch combined the county's records of every building on the site; main_building_only when the quality_grade value comes from one main-building record, in which case the counts in this detail are empty.

Only when its record is there. Can be empty: Only when property.quality_grade_detail is empty: The quality_grade value is empty, so there is nothing to break down; or, rarely, Greenfinch holds a per-building breakdown for this property that could not be read (it is missing, malformed, or disagrees with the quality_grade value) — the value itself is still delivered.

property.quality_grade_detail.buildings

number | null

How many of the site's buildings state a quality grade.

Only when its record is there. Can be empty: The detail comes from a single main-building record, so nothing is known about the site's other buildings. It is also empty whenever property.quality_grade_detail is.

property.quality_grade_detail.buildings_total

number | null

How many buildings the county lists on the site.

Only when its record is there. Can be empty: The detail comes from a single main-building record, so nothing is known about the site's other buildings. It is also empty whenever property.quality_grade_detail is.

property.quality_grade_detail.area_share

number | null

The share of the site's known building floor area, from 0 to 1, in buildings that state a quality grade.

Only when its record is there. Can be empty: The county gives no floor area for the site's buildings, or the detail comes from a single main-building record. It is also empty whenever property.quality_grade_detail is.

property.quality_grade_detail.values[].value

string

One quality grade found on the site. The list is ordered by share of floor area, then by number of buildings, and its first entry is always the quality_grade value.

Only when its record is there. Can be empty: Only when property.quality_grade_detail is empty: The quality_grade value is empty, so there is nothing to break down; or, rarely, Greenfinch holds a per-building breakdown for this property that could not be read (it is missing, malformed, or disagrees with the quality_grade value) — the value itself is still delivered.

property.quality_grade_detail.values[].buildings

number | null

How many buildings have this value.

Only when its record is there. Can be empty: The detail comes from a single main-building record, so nothing is known about the site's other buildings. It is also empty whenever property.quality_grade_detail is.

property.quality_grade_detail.values[].area_share

number | null

This value's share of the site's known building floor area, from 0 to 1.

Only when its record is there. Can be empty: The county gives no floor area for the site's buildings, or the detail comes from a single main-building record. It is also empty whenever property.quality_grade_detail is.

property.has_pool

boolean | null

Whether the property has a swimming pool or water feature: true when at least one building has one, false only when the county's records say there is none.

Always in the record. Can be empty: It is filled only where a county publishes it, and most counties do not carry it today; where one does, it is often filled for only some of its buildings. Where a county does publish it, its records do not say either way for this property; a blank is never read as no.

Rarely carries a value today

property.has_pool_detail

object | null

How the a pool value breaks down across the site's buildings. Present whenever the value is, except as below.

Always in the record. Can be empty: The has_pool value is empty, so there is nothing to break down; or, rarely, Greenfinch holds a per-building breakdown for this property that could not be read (it is missing, malformed, or disagrees with the has_pool value) — the value itself is still delivered.

property.has_pool_detail.basis

"per_building" | "main_building_only"

How to read this detail: per_building when Greenfinch combined the county's records of every building on the site; main_building_only when the has_pool value comes from one main-building record, in which case the counts in this detail are empty.

Only when its record is there. Can be empty: Only when property.has_pool_detail is empty: The has_pool value is empty, so there is nothing to break down; or, rarely, Greenfinch holds a per-building breakdown for this property that could not be read (it is missing, malformed, or disagrees with the has_pool value) — the value itself is still delivered.

property.has_pool_detail.count

number | null

How many of the site's buildings have a pool.

Only when its record is there. Can be empty: The detail comes from a single main-building record, so nothing is known about the site's other buildings. It is also empty whenever property.has_pool_detail is.

property.has_pool_detail.buildings

number | null

How many of the site's buildings say whether they have a pool at all, so "none of fourteen" can be told apart from "one said no and thirteen said nothing".

Only when its record is there. Can be empty: The detail comes from a single main-building record, so nothing is known about the site's other buildings. It is also empty whenever property.has_pool_detail is.

property.has_pool_detail.buildings_total

number | null

How many buildings the county lists on the site.

Only when its record is there. Can be empty: The detail comes from a single main-building record, so nothing is known about the site's other buildings. It is also empty whenever property.has_pool_detail is.

property.has_sprinklers

boolean | null

Whether the property has an automatic fire sprinkler system: true when at least one building has one, false only when the county's records say there is none.

Always in the record. Can be empty: It is filled only where a county publishes it, and most counties do not carry it today; where one does, it is often filled for only some of its buildings. Where a county does publish it, its records do not say either way for this property; a blank is never read as no.

Rarely carries a value today

property.has_sprinklers_detail

object | null

How the sprinklers value breaks down across the site's buildings. Present whenever the value is, except as below.

Always in the record. Can be empty: The has_sprinklers value is empty, so there is nothing to break down; or, rarely, Greenfinch holds a per-building breakdown for this property that could not be read (it is missing, malformed, or disagrees with the has_sprinklers value) — the value itself is still delivered.

property.has_sprinklers_detail.basis

"per_building" | "main_building_only"

How to read this detail: per_building when Greenfinch combined the county's records of every building on the site; main_building_only when the has_sprinklers value comes from one main-building record, in which case the counts in this detail are empty.

Only when its record is there. Can be empty: Only when property.has_sprinklers_detail is empty: The has_sprinklers value is empty, so there is nothing to break down; or, rarely, Greenfinch holds a per-building breakdown for this property that could not be read (it is missing, malformed, or disagrees with the has_sprinklers value) — the value itself is still delivered.

property.has_sprinklers_detail.count

number | null

How many of the site's buildings have sprinklers.

Only when its record is there. Can be empty: The detail comes from a single main-building record, so nothing is known about the site's other buildings. It is also empty whenever property.has_sprinklers_detail is.

property.has_sprinklers_detail.buildings

number | null

How many of the site's buildings say whether they have sprinklers at all, so "none of fourteen" can be told apart from "one said no and thirteen said nothing".

Only when its record is there. Can be empty: The detail comes from a single main-building record, so nothing is known about the site's other buildings. It is also empty whenever property.has_sprinklers_detail is.

property.has_sprinklers_detail.buildings_total

number | null

How many buildings the county lists on the site.

Only when its record is there. Can be empty: The detail comes from a single main-building record, so nothing is known about the site's other buildings. It is also empty whenever property.has_sprinklers_detail is.

property.building_attributes_basis

"per_building" | "main_building_only" | null

How this property's building details were put together: per_building when the county lists each building on the site and Greenfinch combined them; main_building_only when they come from one main-building record.

Always in the record. Can be empty: The property carries none of the building details above: every one of them is empty. The footprint below does not count towards it.

property.footprint_area

number | null

The area the building covers on the ground, in square feet: the figure Greenfinch's property page shows. footprint_area_source says where it comes from. It has no detail object.

Always in the record. Can be empty: Greenfinch holds no footprint for this property, or your plan does not include premium property data, in which case it is withheld with its source.

Your plan

property.footprint_area_source

"county_record" | "measured" | "estimate" | null

Where the footprint comes from: measured when it is taken from the building's outline on a map; estimate when it is the building's floor area divided by its floor count; county_record when it is the county's recorded foundation area. No county's recorded foundation area feeds this figure yet, so county_record does not occur today; every property reads measured, estimate or empty.

Always in the record. Can be empty: The footprint is empty, or withheld because your plan does not include premium property data.

Your plan

property.asset_category

string | null

What kind of property it is at the top level — office, retail, industrial, multifamily and so on.

Always in the record. Can be empty: Greenfinch's research has not produced it for this property. A property whose research has never run carries none of the researched fields.

Greenfinch research

property.asset_subcategory

string | null

The narrower kind within that category.

Always in the record. Can be empty: The category was decided but no narrower kind applied.

Greenfinch research

property.category_confidence

number | null

How confident Greenfinch is in that classification, from 0 to 1.

Always in the record. Can be empty: No classification was produced, so there is nothing to score.

Greenfinch research

property.beneficial_owner

string | null

Who really owns the property, once Greenfinch has looked through holding companies and trusts to the party that benefits.

Always in the record. Can be empty: Research has not run, or it could not reach a conclusion it was willing to publish.

Greenfinch researchA withheld owner

property.beneficial_owner_type

string | null

What kind of party that owner is — a private investor, an institution, a public body, an owner-occupier and so on.

Always in the record. Can be empty: No beneficial owner was concluded, so there is nothing to type.

Greenfinch researchA withheld owner

property.beneficial_owner_confidence

number | null

How confident Greenfinch is in that conclusion, from 0 to 1.

Always in the record. Can be empty: No beneficial owner was concluded, so there is nothing to score.

Greenfinch researchA withheld owner

property.ownership_type

string | null

How the property is held, in the terms a salesperson works in rather than a legal one.

Always in the record. Can be empty: Research has not reached a view on how the property is held.

Greenfinch research

property.management_company

string | null

The firm that manages the property day to day, where that is not the owner.

Always in the record. Can be empty: No managing firm was found, which is normal for owner-managed property.

Greenfinch research

property.registered_owner

string | null

The owner of record as the county states it, with the name normalised. It is the county's answer, not Greenfinch's conclusion about who really benefits.

Always in the record. Can be empty: The county names no owner for this parcel.

A withheld owner

property.assessed_total_val

number | null

The county's total assessed value for the parcel, in dollars.

Always in the record. Can be empty: The county's record carries no total assessed value.

Your plan

property.last_sale_date

string | null

When the property last sold, as the county's tax roll records the sale.

Always in the record. Can be empty: The county records no sale for this parcel.

Your plan

property.last_sale_price

number | null

What it sold for in that same sale, in dollars.

Always in the record. Can be empty: The county records no sale, or the sale records no price — common on a sale between related parties and in states that do not disclose prices.

Your plan

property.last_transfer_date

string | null

A later change of title the county records after the last sale — a sale, a move into a related company, an inheritance or a correction.

Always in the record. Can be empty: The county records no transfer after the last sale, or only one in the same month as the sale.

Your plan

property.revenue_estimates

Record< string, { mid: number; low: number; high: number; tier: number } > | null

What the property is likely worth in annual revenue to you, per service category, as a low, middle and high figure with a confidence tier.

Always in the record. Can be empty: Too little is known about the property to estimate.

Greenfinch research

property.property_website

string | null

The property's own website, where it has one Greenfinch could confirm.

Always in the record. Can be empty: No website was found, or one was found but could not be confirmed as this property's.

Greenfinch research

property.ai_rationale

string | null

Greenfinch's written account of the property — what it is, who is behind it, and why it was classified the way it was. The full text, not the shortened form the app shows before a property is revealed and not the shortened form a property search returns.

Always in the record. Can be empty: Greenfinch's research has not produced it for this property. A property whose research has never run carries none of the researched fields.

Greenfinch research

property.property_phone

string | null

A phone number for the property itself, such as a leasing or management office line.

Always in the record. Can be empty: No number was found for the property.

Greenfinch research

property.property_phone_confidence

number | null

How confident Greenfinch is in that number, from 0 to 1.

Always in the record. Can be empty: No number was found, so there is nothing to score.

Greenfinch research

property.last_enriched_at

string | null

When Greenfinch's research last ran on this property, so you can tell fresh records from stale ones. Empty is the honest signal that research has never run.

Always in the record. Can be empty: Research has never run on this property.

property.deep_link_url

string

A link straight to this property in the Greenfinch app, for a person following up from inside your own system.

Always in the record. Always carries a value.

property.lease_type

string | null

What Greenfinch's research believes the property's lease arrangement is — triple_net, gross, modified_gross, ground_lease, sale_leaseback or owner_occupied — because it says who usually pays for upkeep. Recorded only when a page research read (a leasing flyer, a listing, an article) states it; the property's detail carries that page and its words.

Always in the record. Can be empty: Research has not found a page that states the lease arrangement, which is most properties; the lease-type field is not switched on yet; or the value is owner_occupied or sale_leaseback, which describe who owns the property and are withheld until its research is unlocked for you.

organizations[].greenfinch_organization_id

string

Greenfinch's identifier for the firm, stable across syncs and the key every link row uses.

Only when its record is there. Always carries a value.

organizations[].role

string

What the firm is to the property: owner, property_manager, operator (the business that runs a site it does not own and decides its upkeep), tenant (occupies space without deciding upkeep; recorded, never the buyer), or another attributed role.

Only when its record is there. Always carries a value.

organizations[].attribution_type

string | null

What kind of evidence attached the firm to the property, from strongest to weakest: named for the property itself, portfolio evidence, a matched roster, an inferred coverage area, or the county's record.

Only when its record is there. Can be empty: The link predates Greenfinch recording how it was established.

organizations[].is_current

boolean

Whether the firm's relationship to the property still stands.

Only when its record is there. Always carries a value.

organizations[].name

string | null

The firm's name, resolved into one answer from everything Greenfinch holds.

Only when its record is there. Can be empty: Greenfinch holds the firm as a linked record without a settled name.

Your administrators' field choice

organizations[].domain

string | null

The firm's own web domain.

Only when its record is there. Can be empty: No domain was resolved for the firm.

Your administrators' field choice

organizations[].location

object | null

The firm's own address, as city, state and postal code.

Only when its record is there. Can be empty: Greenfinch holds no address for the firm.

organizations[].location.city

string | null

The city of the firm's own address.

Only when its record is there. Can be empty: Greenfinch holds no address for the firm. It is also empty whenever organizations[].location is.

Your administrators' field choice

organizations[].location.state

string | null

The state of the firm's own address.

Only when its record is there. Can be empty: Greenfinch holds no address for the firm. It is also empty whenever organizations[].location is.

Your administrators' field choice

organizations[].location.postal_code

string | null

The postal code of the firm's own address.

Only when its record is there. Can be empty: Greenfinch holds no address for the firm. It is also empty whenever organizations[].location is.

Your administrators' field choice

organizations[].industry

string | null

What the firm does, as one industry classification.

Only when its record is there. Can be empty: No industry was resolved for the firm.

Your administrators' field choice

organizations[].employees

number | null

How many people the firm employs, as a single estimate.

Only when its record is there. Can be empty: Only a range is known, or nothing is.

Your administrators' field choice

organizations[].employees_range

string | null

How many people the firm employs, as a band — used when no single figure is known.

Only when its record is there. Can be empty: No headcount is known.

Your administrators' field choice

organizations[].linkedin_handle

string | null

The firm's LinkedIn handle.

Only when its record is there. Can be empty: No LinkedIn page was resolved for the firm.

Your administrators' field choice

organizations[].phone_numbers

string[] | null

The firm's own main lines. These are business numbers, delivered as Greenfinch holds them — the phone policy that governs a person's numbers does not apply to a firm's.

Only when its record is there. Can be empty: No number is held for the firm.

Your administrators' field choice

contacts[].greenfinch_contact_id

string

Greenfinch's identifier for the person, stable across syncs and the key every link row uses.

Only when its record is there. Always carries a value.

contacts[].role

string | null

What the person is to the property: owner, property_manager or operator by the company they work for, or facilities, procurement, leasing or other by their job.

Only when its record is there. Can be empty: No role was attributed to this person for this property.

contacts[].attribution_type

string | null

What kind of evidence attached the person to the property.

Only when its record is there. Can be empty: The link predates Greenfinch recording how it was established.

contacts[].relationship_status

string

Whether the person's connection to the property is active, has changed, is former, or is under review.

Only when its record is there. Always carries a value.

contacts[].relationship_confidence

"high" | "medium" | "low" | string

How strongly Greenfinch holds that connection — high, medium or low.

Only when its record is there. Always carries a value.

contacts[].stale_pending_review

boolean

True when Greenfinch's own checks suspect this connection has gone stale but have not concluded it. Treat the connection as under review rather than confirmed; it never silently becomes a confirmed one.

Only when its record is there. Always carries a value.

contacts[].identity_not_confirmed

boolean

True when Greenfinch could not confirm this person's current job: the title and employer are the ones research found, and nobody has confirmed them. Treat them as unconfirmed.

Only when its record is there. Always carries a value.

contacts[].full_name

string | null

The person's name.

Only when its record is there. Can be empty: Greenfinch holds no name for the person.

Your administrators' field choiceAccess to the record

contacts[].title

string | null

The person's job title, in full — never shortened.

Only when its record is there. Can be empty: No title is held for the person.

Your administrators' field choiceAccess to the record

contacts[].email

string | null

The person's work email address.

Only when its record is there. Can be empty: No deliverable address is held for the person.

Your administrators' field choiceAccess to the record

contacts[].email_validation_status

"valid" | "unknown" | null

What Greenfinch knows about that address: valid means confirmed deliverable, and unknown means found but not yet confirmed — a positive signal, not a negative one.

Only when its record is there. Can be empty: No address is held for the person.

Your administrators' field choice

contacts[].linkedin_url

string | null

The person's LinkedIn profile.

Only when its record is there. Can be empty: No profile was resolved for the person, or the one on record has not passed Greenfinch's LinkedIn checks.

Your administrators' field choice

contacts[].employer_name

string | null

Who the person works for.

Only when its record is there. Can be empty: No employer is held for the person.

Your administrators' field choice

contacts[].phones[].value

string

A phone number for the person, in national display format. Each number passes Greenfinch's phone-delivery policy before it ships, so a number Greenfinch holds but may not deliver never appears here.

Only when its record is there. Always carries a value.

Your administrators' field choicePhone delivery policyAccess to the record

contacts[].phones[].label

string | null

The label Greenfinch stored with that number, unchanged since this shape was first published so an existing mapping on it keeps working. It is carried by the lead bundle only; the flat people table delivers numbers without it.

Only when its record is there. Can be empty: The number was stored without a label.

Your administrators' field choice

contacts[].phones[].type

string | null

What kind of number it is — mobile, direct or office — so you can tell them apart without reading the label. Carried by the lead bundle only.

Only when its record is there. Can be empty: The kind could not be inferred.

Your administrators' field choice

contacts[].phones[].fallback_from_employer

boolean

True on the one stand-in entry a person with no number of their own receives: their employer's main office line. False on every number the person actually owns. Carried by the lead bundle only, so the flat people table cannot tell the two apart.

Only when its record is there. Always carries a value.

contacts[].phone_e164

string | null

The person's primary deliverable number in the international format, for matching against numbers already in your own system.

Only when its record is there. Can be empty: The person has no number Greenfinch may deliver, or their only number is their employer's main office line — deliberately left out here, because two colleagues would otherwise share a number and your own matching would read them as the same person.

Your administrators' field choicePhone delivery policyAccess to the recordRarely carries a value today

contacts[].confidences.name

number | null

How confident Greenfinch is in the person's name, from 0 to 1. Confidence scores are included only in delivered files; the REST API and a connected assistant do not return them.

Only when its record is there. Can be empty: No name is held for the person.

Your administrators' field choice

contacts[].confidences.email

number | null

How confident Greenfinch is in the person's email address, from 0 to 1. Included only in delivered files.

Only when its record is there. Can be empty: No address is held for the person.

Your administrators' field choice

contacts[].confidences.linkedin

number | null

How confident Greenfinch is in the person's LinkedIn profile, from 0 to 1. Included only in delivered files.

Only when its record is there. Can be empty: No profile is held for the person.

Your administrators' field choice

contacts_summary

object | null

What a reduced record carries instead of people: how many are attached and, for each, a job title and what revealing would yield.

Always in the record. Can be empty: The record is complete, which is the ordinary case: only a reduced record carries this summary.

contacts_summary.total_count

number

How many people are attached to the property.

Only when its record is there. Can be empty: Only when contacts_summary is empty: The record is complete, which is the ordinary case: only a reduced record carries this summary.

contacts_summary.contacts[].title

string | null

One attached person's job title, with no name, no identifier and no way to reach them — enough to judge whether revealing the property is worth it.

Only when its record is there. Can be empty: No title is held for that person. It is also empty whenever contacts_summary is.

contacts_summary.contacts[].availability.email

boolean

Whether revealing would yield an email address for that person.

Only when its record is there. Can be empty: Only when contacts_summary is empty: The record is complete, which is the ordinary case: only a reduced record carries this summary.

contacts_summary.contacts[].availability.phone

boolean

Whether revealing would yield a phone number for that person.

Only when its record is there. Can be empty: Only when contacts_summary is empty: The record is complete, which is the ordinary case: only a reduced record carries this summary.

contacts_summary.contacts[].availability.linkedin

boolean

Whether revealing would yield a LinkedIn profile for that person.

Only when its record is there. Can be empty: Only when contacts_summary is empty: The record is complete, which is the ordinary case: only a reduced record carries this summary.

pipeline.in_pipeline

boolean

Whether your organization has actually put this property in its pipeline. False means the rest of this section is a default Greenfinch filled in, not something your team did.

Always in the record. Always carries a value.

pipeline.status

string

Where your team has this property in its own pipeline.

Always in the record. Always carries a value.

Your own content

pipeline.deal_value

number | null

The deal value your team recorded.

Always in the record. Can be empty: Nobody on your team has recorded one.

Your own content

pipeline.status_changed_at

string

When that status last changed.

Always in the record. Always carries a value.

Your own content

pipeline.lost_reason

string | null

The reason your team recorded for losing the deal.

Always in the record. Can be empty: The deal is not marked lost, or no reason was recorded.

Your own content

pipeline.disqualified_reason

string | null

The reason your team recorded for disqualifying the property.

Always in the record. Can be empty: The property is not disqualified, or no reason was recorded.

Your own content

pipeline.assigned_rep

object | null

The person on your team who owns this property in your pipeline.

Always in the record. Can be empty: Nobody on your team owns the property.

Your own content

pipeline.assigned_rep.greenfinch_user_id

string

Greenfinch's identifier for the person on your team who owns this property.

Only when its record is there. Can be empty: Only when pipeline.assigned_rep is empty: Nobody on your team owns the property.

Your own content

pipeline.assigned_rep.name

string | null

That person's name.

Only when its record is there. Can be empty: Their Greenfinch account carries no name. It is also empty whenever pipeline.assigned_rep is.

Your own content

pipeline.assigned_rep.email

string | null

That person's email address.

Only when its record is there. Can be empty: Their Greenfinch account carries no email address. It is also empty whenever pipeline.assigned_rep is.

Your own content

notes[].id

string

Greenfinch's identifier for one note your team wrote.

Only when its record is there. Always carries a value.

Your own content

notes[].author_name

string | null

Who on your team wrote it.

Only when its record is there. Can be empty: Their Greenfinch account carries no name.

Your own content

notes[].created_at

string

When it was written.

Only when its record is there. Always carries a value.

Your own content

notes[].content

string

The note itself, as written, with any mention of a colleague resolved to their name.

Only when its record is there. Always carries a value.

Your own content

notes_digest

string

Every note on the property as one block of plain text in date order — including notes beyond those listed individually — for a system with one text field to put them in.

Always in the record. Always carries a value.

Your own content

actions[].id

string

Greenfinch's identifier for one follow-up your team created.

Only when its record is there. Always carries a value.

Your own content

actions[].action_type

"follow_up" | "call" | "email" | "meeting" | "other"

What kind of follow-up it is — a call, an email, a meeting or another kind.

Only when its record is there. Always carries a value.

Your own content

actions[].description

string | null

What your team wrote about it.

Only when its record is there. Can be empty: It was created without a description.

Your own content

actions[].due_at

string

When it is due.

Only when its record is there. Always carries a value.

Your own content

actions[].status

"pending" | "completed" | "cancelled"

Whether it is still pending, has been completed, or was cancelled.

Only when its record is there. Always carries a value.

Your own content

actions[].completed_at

string | null

When it was completed.

Only when its record is there. Can be empty: It has not been completed.

Your own content

actions[].assignee_name

string | null

Who on your team it is assigned to.

Only when its record is there. Can be empty: It is unassigned, or their Greenfinch account carries no name.

Your own content

actions[].created_by_name

string | null

Who on your team created it.

Only when its record is there. Can be empty: Their Greenfinch account carries no name.

Your own content

actions[].created_at

string

When it was created.

Only when its record is there. Always carries a value.

Your own content

actions_digest

string

The whole follow-up history as one block of plain text in date order — pending, completed and cancelled alike.

Always in the record. Always carries a value.

Your own content

What this page is not

  • It does not say which records you receive — only which fields each record carries. What is in your set is decided by your licence, your service area and every privacy rule, and it is set out in your Enterprise order.
  • It does not list the arguments you send. Those are on REST API and in the MCP tool reference.
  • It never publishes anything but Greenfinch's own identifier for a record. There is no field on this page carrying a county's parcel identifier, an internal key, or the name of a company Greenfinch buys data from — by rule, and checked automatically.