Property Intelligence API Documentation

Independent API for England property and planning intelligence: property overviews, constraint checks, planning application searches, and site reports using the official Planning Data API. Payment is the exact USDC price on Base with x402.

POSThttps://brainiac.software/api/v1/property-intelligence/overview$0.05 USDC

Property overview

Retrieve available planning and heritage information for a property using UPRN, coordinates, or postcode.

Body

FieldRequiredNotes
uprnNostring
latitudeNonumber
longitudeNonumber
postcodeNostring

Request exampleJSON

{
  "uprn": "10008315764"
}

Response exampleJSON

{
  "retrievedAt": "2026-10-29T12:00:00.000Z",
  "overview": {
    "input": {
      "uprn": "10008315764"
    },
    "totalEntities": 3,
    "byDataset": {
      "conservation-area": [
        {
          "name": "Trafalgar Square",
          "dataset": "conservation-area",
          "reference": "CONARA/1300",
          "start-date": "2008-02-21",
          "point": "POINT (-0.126727 51.508303)"
        }
      ],
      "listed-building": [
        {
          "name": "10 Downing Street",
          "dataset": "listed-building",
          "reference": "123456",
          "start-date": "1970-01-01",
          "listed_building_grade": "Grade I",
          "point": "POINT (-0.1276 51.5031)"
        }
      ]
    }
  },
  "sources": [
    {
      "source": "Planning Data API",
      "url": "https://www.planning.data.gov.uk/entity.json",
      "retrievedAt": "2026-10-29T12:00:00.000Z"
    }
  ],
  "limitations": [
    "Data coverage varies by local planning authority.",
    "An absence of results does not mean no constraints exist.",
    "UPRN queries are more precise than coordinates for registered properties."
  ]
}

cURL

curl -i -X POST "https://brainiac.software/api/v1/property-intelligence/overview" \
  -H 'content-type: application/json' \
  -H 'Idempotency-Key: <fresh-64-character-random-hex-key>' \
  --data-binary @- <<'JSON'
{
  "uprn": "10008315764"
}
JSON
POSThttps://brainiac.software/api/v1/property-intelligence/constraints/check$0.05 USDC

Check planning constraints

Check specific planning constraints (conservation areas, listed buildings, flood risk, etc.) for a location.

Body

FieldRequiredNotes
uprnNostring
latitudeNonumber
longitudeNonumber
datasetsNoarray; Array

Request exampleJSON

{
  "latitude": 51.5074,
  "longitude": -0.1278
}

Response exampleJSON

{
  "retrievedAt": "2026-10-29T12:00:00.000Z",
  "constraints": {
    "input": {
      "latitude": 51.5074,
      "longitude": -0.1278
    },
    "datasetsQueried": [
      "conservation-area",
      "listed-building",
      "green-belt",
      "flood-risk-zone"
    ],
    "totalConstraints": 2,
    "constraints": [
      {
        "name": "Trafalgar Square",
        "dataset": "conservation-area",
        "reference": "CONARA/1300",
        "startDate": "2008-02-21",
        "documentUrl": "https://www.westminster.gov.uk/media/document/trafalgar-square-conservation-area-audit-spg",
        "point": "POINT (-0.126727 51.508303)"
      },
      {
        "name": "10 Downing Street",
        "dataset": "listed-building",
        "reference": "123456",
        "startDate": "1970-01-01",
        "documentUrl": "https://historicengland.org.uk/listing/the-list/list-entry/123456",
        "point": "POINT (-0.1276 51.5031)",
        "listedBuildingGrade": "Grade I"
      }
    ]
  },
  "sources": [
    {
      "source": "Planning Data API",
      "url": "https://www.planning.data.gov.uk/entity.json",
      "retrievedAt": "2026-10-29T12:00:00.000Z"
    }
  ],
  "limitations": [
    "Data coverage varies by local planning authority.",
    "An absence of results does not mean no constraints exist.",
    "UPRN queries are more precise than coordinates for registered properties."
  ]
}

cURL

curl -i -X POST "https://brainiac.software/api/v1/property-intelligence/constraints/check" \
  -H 'content-type: application/json' \
  -H 'Idempotency-Key: <fresh-64-character-random-hex-key>' \
  --data-binary @- <<'JSON'
{
  "latitude": 51.5074,
  "longitude": -0.1278
}
JSON
POSThttps://brainiac.software/api/v1/property-intelligence/site/report$0.10 USDC

Generate site report

Generate a comprehensive site report combining constraints, brownfield land, and planning applications.

Body

FieldRequiredNotes
uprnNostring
latitudeNonumber
longitudeNonumber
postcodeNostring
includeBrownfieldYesboolean; Default: true
includePlanningApplicationsYesboolean; Default: true

Request exampleJSON

{
  "uprn": "10008315764",
  "includeBrownfield": true,
  "includePlanningApplications": true
}

Response exampleJSON

{
  "retrievedAt": "2026-10-29T12:00:00.000Z",
  "report": {
    "input": {
      "uprn": "10008315764"
    },
    "totalEntities": 15,
    "byDataset": {
      "conservation-area": [
        {
          "name": "Trafalgar Square",
          "dataset": "conservation-area"
        }
      ],
      "listed-building": [
        {
          "name": "10 Downing Street",
          "dataset": "listed-building"
        }
      ],
      "brownfield-land": [
        {
          "name": "Former Industrial Site",
          "dataset": "brownfield-land"
        }
      ],
      "planning-application": [
        {
          "name": "New Development",
          "dataset": "planning-application"
        }
      ]
    },
    "summary": {
      "constraints": 2,
      "brownfieldSites": 1,
      "planningApplications": 12
    }
  },
  "sources": [
    {
      "source": "Planning Data API",
      "url": "https://www.planning.data.gov.uk/entity.json",
      "retrievedAt": "2026-10-29T12:00:00.000Z"
    }
  ],
  "limitations": [
    "Data coverage varies by local planning authority.",
    "An absence of results does not mean no constraints exist.",
    "Planning applications data is still subject to development and coverage limitations.",
    "Do not claim complete coverage of planning applications.",
    "Brownfield land coverage varies by local planning authority data sharing."
  ]
}

cURL

curl -i -X POST "https://brainiac.software/api/v1/property-intelligence/site/report" \
  -H 'content-type: application/json' \
  -H 'Idempotency-Key: <fresh-64-character-random-hex-key>' \
  --data-binary @- <<'JSON'
{
  "uprn": "10008315764",
  "includeBrownfield": true,
  "includePlanningApplications": true
}
JSON