---
title: "Retrieve a zoning classification"
method: GET
path: "/v1/zoning/{zoning_id}"
tags: ["zoning"]
---

# Retrieve a zoning classification

`GET /v1/zoning/{zoning_id}`

## Request

- Base URL: `http://localhost:3030`
- URL: `http://localhost:3030/v1/zoning/{zoning_id}`
- Auth: HTTP bearer

Retrieves a zoning classification with the ordinance that adopted it and the dates it is in
effect.

`allowances` and `standards` are included with `include=allowance` and
`include=standard`. `unlisted_uses` is always included.

## Path parameters

- `zoning_id` string, required: Unique identifier for the zoning classification.

## Query parameters

- `include` string, nullable: Comma-separated sections to include. Any of `allowance` (`allowances`), `standard` (`standards`) and `geometry` (every mapped area, as GeoJSON).
- `format` 'json' | 'geojson': Response format. One of `json` (the object) or `geojson` (a Feature). Defaults to `json`. `Accept: application/geo+json` also selects `geojson`.

## Response `200`

The zoning classification.

- Zoning: A zoning classification: a base district or an overlay, with its rules.
  - `object` 'zoning', required: The object's type. Always `zoning`.
  - `id` string, required: A zoning id.
  - `code` string, required: District code, as published, such as `R-1`. Unique only within its jurisdiction.
  - `name` string, nullable, required: District name, as published. Null when only a code is published.
  - `kind` 'base' | 'overlay', required: District type. One of `base` or `overlay`. A place has one base district and any number of overlays.
  - `applies_over` Reach, required: The base districts an overlay applies to.
    - `scope` 'all' | 'listed' | 'unstated', required: Which base districts. One of `all`, `listed` (the districts in `codes`) or `unstated`.
    - `codes` string[], required: Base district codes. Empty unless `scope` is `listed`.
    - `citation` Citation, required: The ordinance text a rule comes from.
      - `section` string, nullable: Section of the zoning code. Null when not published.
      - `passage` string, nullable: The rule's text, quoted from the zoning code. Null when only the section is published.
      - `url` string, nullable: URL of the published passage. Null when not published.
      - `effective` string, date, nullable: Date the text took effect. Null when not stated.
  - `precedence` Precedence, required: An overlay's rank when its rules conflict with others.
    - `rank` integer, required: Rank when rules conflict, lowest first. A base district is always `0`.
    - `basis` 'stated' | 'house_default', required: Source of the rank. One of `stated` (set by the ordinance) or `house_default` (assigned by Placestack because the ordinance sets none).
    - `citation` Citation: The ordinance text a rule comes from.
      - `section` string, nullable: Section of the zoning code. Null when not published.
      - `passage` string, nullable: The rule's text, quoted from the zoning code. Null when only the section is published.
      - `url` string, nullable: URL of the published passage. Null when not published.
      - `effective` string, date, nullable: Date the text took effect. Null when not stated.
  - `jurisdiction` ZoningJurisdictionRef, required: The jurisdiction that adopted the classification.
    - `id` string, required: A jurisdiction id.
    - `name` string, required: The jurisdiction's common name.
    - `type` string, required: Kind of jurisdiction, in local terms, such as `county`, `parish`, `city` or `town`.
    - `fips` string, nullable: The Census GEOID. Null outside the US.
    - `href` string, required: The object's path in the API.
  - `within` ZoningWithin[], required: The jurisdictions that contain `jurisdiction`, largest first.
    - `id` string, required: A jurisdiction id.
    - `name` string, required: The jurisdiction's common name.
    - `tier` string, required: Level of government. One of `national`, `region` (a state or province), `subregion` (a county or district) or `local` (a city, town, village or township).
    - `type` string, required: Kind of jurisdiction, in local terms, such as `county`, `parish`, `city` or `town`.
    - `fips` string, nullable: The Census GEOID. Null outside the US.
  - `category` Code, required: A coded value, as published, with its standard equivalent.
    - `code` string, nullable: Code, as published.
    - `description` string, nullable: Meaning of the code, as published. Null when not published.
    - `standard` string, nullable: Standard value, shared across jurisdictions. Null when not yet classified.
  - `purpose` string, nullable, required: Purpose statement, as published. Null when there is none.
  - `ordinance` Ordinance, required: The ordinance that adopted a classification.
    - `citation` string, nullable: Ordinance citation, as published. Null when not published.
    - `section` string, nullable: Section that defines the classification. Null when not published.
    - `url` string, nullable: URL of the published ordinance. Null when not published.
    - `adopted` string, date, nullable: Adoption date. Null when not published.
    - `effective` string, date, nullable: Effective date. Null when not published.
  - `effective` Period, required: The dates a classification is in effect.
    - `from` string, date, nullable: Start date. Null when not published.
    - `to` string, date, nullable: End date. Null while current.
  - `legal_status` 'adopted' | 'proposed', required: One of `adopted` or `proposed`. A `proposed` classification is part of a pending amendment.
  - `mapped_area_m2` number, nullable, required: Total mapped area, in square meters. Null when not on the zoning map.
  - `allowances` Allowance[], nullable, required: Each use the ordinance lists, with its result. Included only with `include=allowance`; null otherwise. A use not listed here is governed by `unlisted_uses`.
    - `use` Use, required: A land use, as named in the ordinance.
      - `code` string, nullable: Use code, as published. Null when the ordinance gives no code.
      - `name` string, required: Use name, as published.
      - `category` string, nullable: Standard use category, shared across jurisdictions. Null when not yet classified.
    - `result` 'permitted' | 'conditional' | 'prohibited' | 'unknown', required: Whether the use is allowed. One of `permitted`, `conditional`, `prohibited` or `unknown`. `unknown` means the ordinance lists the use without a result.
    - `qualification` string, nullable: Conditions on the use, as published. Null when there are none.
    - `process` string, nullable: Approval required, as published, such as a special use permit. Null unless `result` is `conditional`.
    - `citation` Citation, required: The ordinance text a rule comes from.
      - `section` string, nullable: Section of the zoning code. Null when not published.
      - `passage` string, nullable: The rule's text, quoted from the zoning code. Null when only the section is published.
      - `url` string, nullable: URL of the published passage. Null when not published.
      - `effective` string, date, nullable: Date the text took effect. Null when not stated.
  - `unlisted_uses` UnlistedUses, required: The ordinance's rule for uses it does not list.
    - `result` 'permitted' | 'conditional' | 'prohibited' | 'unknown', required: Whether an unlisted use is allowed. One of `permitted`, `conditional`, `prohibited` or `unknown`.
    - `process` string, nullable: Approval required for an unlisted use, as published. Null when none is named.
    - `citation` Citation, required: The ordinance text a rule comes from.
      - `section` string, nullable: Section of the zoning code. Null when not published.
      - `passage` string, nullable: The rule's text, quoted from the zoning code. Null when only the section is published.
      - `url` string, nullable: URL of the published passage. Null when not published.
      - `effective` string, date, nullable: Date the text took effect. Null when not stated.
  - `standards` Standard[], nullable, required: Dimensional standards, such as setbacks, height and lot size. Included only with `include=standard`; null otherwise.
    - `type` string, required: Type of standard. One of `setback_front`, `setback_side`, `setback_side_combined`, `setback_side_street`, `setback_rear`, `setback_parking_front`, `setback_parking_side`, `setback_parking_side_street`, `setback_parking_rear`, `build_to_front`, `build_to_side_street`, `height_max_ft`, `height_max_stories`, `height_min_ft`, `height_min_stories`, `far_max`, `lot_area_min`, `lot_area_max`, `lot_width_min`, `lot_depth_min`, `lot_coverage_max`, `density_max`, `open_space_min`, `outdoor_amenity_min`, `impervious_max`, `parking_min` or `parking_max`.
    - `label` string, nullable: Row of the ordinance's table the standard is read from, as published. Null when not published.
    - `value` Bound: A numeric range.
      - `min` number, nullable: Minimum. Null when there is none.
      - `max` number, nullable: Maximum. Null when there is none.
      - `unit` string, required: Unit of `min` and `max`. One of `ft`, `sq_ft`, `acre`, `percent`, `ratio`, `du_acre`, `space`, `story`.
    - `text` string, nullable: The standard as published. Null when `value` is set.
    - `qualification` string, nullable: Conditions on the standard, as published. Null when there are none.
    - `citation` Citation, required: The ordinance text a rule comes from.
      - `section` string, nullable: Section of the zoning code. Null when not published.
      - `passage` string, nullable: The rule's text, quoted from the zoning code. Null when only the section is published.
      - `url` string, nullable: URL of the published passage. Null when not published.
      - `effective` string, date, nullable: Date the text took effect. Null when not stated.
  - `geometry` Geometry, required: A GeoJSON geometry in WGS 84, longitude first.
    - `type` string, required: Geometry type. One of `Polygon` or `MultiPolygon`.
    - `coordinates` unknown[], required: Coordinates, as `[longitude, latitude]` positions nested by geometry type.
      - unknown
  - `sources` Source[], required: The zoning map and ordinance the classification is read from.
    - `kind` 'map' | 'ordinance', required: Type of source. One of `map` (the zoning map) or `ordinance` (the zoning code).
    - `url` string, nullable: URL of the source. Null when it has none.
    - `acquired` string, date, nullable: Date the source was retrieved. Null when not recorded.
  - `as_of` string, date, nullable, required: The oldest `acquired` date in `sources`.
  - `href` string, required: The object's path in the API.

## Other responses

- `401`: `credential_missing`, `credential_invalid` or `credential_expired`. The request has no valid credential.
- `402`: `quota_exhausted`. The credit balance is too low for this request. Nothing is charged.
- `403`: `scope_missing`, `person_required`, `api_key_not_accepted` or `entitlement_missing`. The credential or plan does not allow this request. `detail` names the reason.
- `404`: `no_such_resource`. No zoning classification has this id.
- `422`: `parameter_invalid`, `id_malformed` or a cursor code. A parameter is missing or invalid. `errors` lists each one.
- `429`: `rate_limited`. Too many requests. Retry after the `Retry-After` interval. Nothing is charged.
- `501`: `not_available`. Zoning data is not available yet.

---

[API](https://skmtc.dev/placestack/apis/placestack-api.md) · [All operations](https://skmtc.dev/placestack/apis/placestack-api/llms.txt) · [OpenAPI document](https://skmtc.dev/placestack/apis/placestack-api/revisions/0ccdf0882668?raw)
