> For clean Markdown of any page, append .md to the page URL. > For a complete documentation index, see https://docs.coperniq.io/release-notes/2026/6/8/llms.txt. > For AI client integration (Claude Code, Cursor, etc.), connect to the MCP server at https://docs.coperniq.io/_mcp/server. ## AHJs and an `isCustom` flag on properties ### New: AHJ (Authorities Having Jurisdiction) endpoints Look up jurisdictions and manage their custom property values through the public API. | Method | Path | Description | | ------- | ------------ | ----------------------------------------------------------------------------------------------------------------- | | `GET` | `/ahjs` | List AHJs (pagination, name/state code search, filter by `state`/`type`/`country`, or geo lookup via `lat`+`lng`) | | `GET` | `/ahjs/{id}` | Get an AHJ by ID, including catalog metadata and custom field values | | `PATCH` | `/ahjs/{id}` | Update custom property values on an AHJ | #### Notes * AHJs are seeded globally from the US Census TIGER catalog, plus per-company private records. Only active jurisdictions are returned. * Pass `lat`+`lng` together to return every AHJ whose boundary covers the point (e.g. city, county, and state), ordered most-specific-first. Name/state/type filters are ignored in geo mode. * Built-in AHJ fields (shown under **Community Data** in the UI) are read-only. Only custom fields can be updated via `PATCH /ahjs/{id}`; the body `custom` map is keyed by property `keyName` — fetch the available keys via `GET /properties?record_type=ahj`. Pass `null` to clear a value. ### `GET /properties` — `ahj` record type and `isCustom` flag * The `ahj` record type is now documented for `GET /properties` (`?record_type=ahj`). It was already returned in the default response and is now an accepted filter value. * For the `ahj` scope, only **customer-defined custom** properties are returned. Standard built-in AHJ fields are no longer listed here — they are not updatable via the public API and are exposed directly on the AHJ object instead. * Every property in the response now includes an **`isCustom`** boolean: `true` for customer-defined custom columns, `false` for built-in standard properties. Items in the `ahj` array are always `isCustom: true`. > Official Coperniq API documentation. Build integrations for solar and construction project management — projects, opportunities, work orders, invoices, webhooks, and more.